Pregunta

Me hizo un programa que lograr una representación del conocimiento, es bueno pero lo que podría ser mejor si puedo crear y destruir clases sobre la marcha.

¿Fue útil?

Solución

Si usted está hablando de la generación de código dinámico, aquí hay un enlace:

en c # código dinámico en escritura

Otros consejos

A partir de su descripción, parece que realmente no desea crear clases de C # en tiempo de ejecución. Lo que queremos es una especie de representación del conocimiento.

No hay respuesta simple a esto. Esta es un área de investigación de la inteligencia artificial. Ver http://en.wikipedia.org/wiki/Knowledge_representation_and_reasoning para una introducción.

A mí me suena como usted quiere aprender algo de AI programación y representación del conocimiento . Sin embargo, esto es muy diferente de la creación de clases en tiempo de ejecución. Wikipedia da una bastante buena introducción en el tema, pero ningún código en absoluto.

http://en.wikipedia.org/wiki/Artificial_intelligence

En C # 3.0 es posible crear tipos anónimos, aunque como señala STW, esto no se define en tiempo de ejecución, pero el tiempo de compilación.

var myClass = new { A = 5, Id = "MyClass", num = 0.187f};

Console.WriteLine(myClass.Id);

Si usted está mirando para crear realmente un nuevo tipo de clase sobre la marcha, una manera indirecta es generar archivos de clase C #, compilarlos en una asamblea, y utilizar la reflexión para cargar las clases.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top