¿Puedo crear clases parciales en diferentes espacios de nombres? ¿Funcionará correctamente? e.x .:Clase parcial en diferentes espacios de nombres
class1.cs
namespace name1
{
public partial class Foo
{
Bar1(){
return 10;
}
}
}
Class2.cs
namespace name1.name2
{
public partial class Foo
{
Bar2(){
return 100;
}
}
}
main.cs
using name1;
using name1.name2;
namespace mainClass
{
public class mainClass
{
Foo classFoo = new Foo();
int Count = classFoo.Bar1() + classFoo.Bar2();
// Will Count = 110?
}
}
¿Qué debo hacer para que funcione? (si mi ejemplo no es correcto)
Quiero hacer bibliotecas separadas. Para agregar nuevas funcionalidades a la clase principal sin modificarla. Tengo un gran agujero en mi mente relacionado con este tema ... – RAMe0
Bueno, sugeriría dos posibilidades. El primero sería crear una subclase para 'name1.Foo' en' name1.name2.Foo'. El segundo sería usar métodos de extensión (http://msdn.microsoft.com/en-us/library/bb383977.aspx) que es una gran manera de "agregar" funcionalidad a las clases que no controlas, o para cualquier razón, no quiero modificar. – CodingGorilla
@ RAMe0: las clases parciales se resuelven en tiempo de compilación, no hay ningún sentido de tipo parcial en .NET es una construcción de lenguaje. Permite que el _source code_ de una clase aparezca en múltiples archivos de origen durante la compilación. – AnthonyWJones