Utilizando TypeBuilder para crear un constructor de paso para la clase base
Di que tengo unSpaceShip
clase, así:
public class SpaceShip {
public SpaceShip() { }
public SpaceShip(IRocketFuelSource fuelSource) { }
}
Quiero usarTypeBuilder
para crear un tipo en tiempo de ejecución que herede de SpaceShip y defina un constructor para cada uno de los de SpaceShip. No necesito los constructores para realmentehace cualquier cosa excepto pasar sus argumentos al padre (constructores de "transferencia"). Por ejemplo, el tipo generado se vería así si se expresara en C #:
public class SpaceShipSubClass : SpaceShip {
public SpaceShipSubClass() : base() { }
public SpaceShipSubClass(IRocketFuelSource fuelSource) : base(fuelSource) { }
}
Para complicar un poco las cosas, en realidad no sé de qué clase heredará el tipo generado hasta el tiempo de ejecución (por lo que tendré que tener en cuenta cualquier número de constructores, posiblemente con parámetros predeterminados).
¿Es posible? Creo que podría resolverlo si tuviera una dirección general para comenzar, es solo que soy completamente nuevo enTypeBuilder
.
¡Gracias