I tienen una clase baseC# inheritance. clase derivada de la clase Base
public class A
{
public string s1;
public string s2;
}
También tengo una clase derivada:
public class B : A
{
public string s3;
}
Supongamos mi programa crea una instancia de la clase A.
A aClassInstance = new A();
se establecieron algunos parámetros:
aClassInstance.s1 = "string 1";
aClassInstance.s2 = "string 2";
En este punto me gustaría crear una instancia de la clase B. Pero me gustaría B ya se disponen de valores de mi instancia de la clase A.
esto no funcionó:
public B bClassInstance = new B():
bClassInstance = (B)aClassInstance;
Ni éste:
Hecho un método clon de la clase A.
public B cloneA() {
A a = new A();
a = (A)this.MemberwiseClone()
return(B)a;
}
el código VS toma tanto de lo anterior - bu t tengo errores de tiempo de ejecución
favor ayude
Tenga cuidado al clonar, en particular si su clase tiene campos de tipos de referencia mutables. Decide si quieres un clon profundo o un clon superficial, y documentalo. – TrueWill
derecha. Esta clase en particular no tiene referencias, por lo que un clon superficial funciona para ello. Encontré una buena publicación sobre la clonación superficial vs profunda aquí para cualquier persona interesada: http://itpksingh.blogspot.com/2009/08/shallow-copyingdeep-copyingobject.html – Sam
Encontré una solución usando ValueInjector. StackOverFlow no me permite "responder mi propia pregunta" todavía. Una vez que lo haga, publicará todos los detalles. – Sam