2010-08-02 14 views
7

¿Existe un marco que haga que el uso de Reflection.Emit sea más fácil? Algo que puedo decir: dame una clase con un campo de cadena y obtén, establece accesos.Marco para .net Reflection.Emit simplification?

El código que encuentro en Create a class type in code in .net c# es lo que necesito, pero es algo críptico. Creo que una biblioteca con una interfaz simplificada aumentaría la productividad.

+3

Pruebe ExpandoObject: http://msdn.microsoft.com/en-us/library/system.dynamic.expandoobject.aspx – Kimi

Respuesta

4

Creo que acabas de describir CodeDOM. Desafortunadamente, realmente (IMO) no lo hace más fácil - simplemente lo hace ... diferente.

Personalmente, sólo tiene que utilizar TypeBuilder, ILGenerator y encapsular la funcionalidad común que necesito, es decir

PropertyBuilder CreateProperty(TypeBuilder type, string name, Type propertyType) 
{...} 

Meta-programación rara vez es sencilla, pero a partir de ese detalle se obtiene una buena comprensión muy de lo que está sucediendo realmente

+0

Ciertamente echaré un vistazo a CodeDOM. Desde la primera impresión, me atrae. –

3

Eche un vistazo a CCI.

+0

CCI es ciertamente una opción, que consideraré. Gracias. –

Cuestiones relacionadas