¿Es posible hacer lo siguiente en C # (o en cualquier otro idioma)?
Estoy obteniendo datos de una base de datos. En tiempo de ejecución puedo calcular el número de columnas y los tipos de datos de las columnas recuperadas.
A continuación, quiero "generar" una clase con estos tipos de datos como campos. También quiero almacenar todos los registros que obtuve en una colección.
El problema es que quiero hacer los pasos 1 y 2 en tiempo de ejecución
es posible? Actualmente estoy usando C # pero puedo cambiar a otra cosa si lo necesito.
c#
dynamic-typing
Chani
fuente
fuente
dynamic
en Massive: blog.wekeroad.com/helpy-stuff/and-i-shall-call-it-massiveRespuestas:
Use CodeDom. Aquí hay algo para comenzar
Crea un ensamblado 'Test.Dynamic.dll' con esta clase en él.
También puede usar características dinámicas de C #
Clase DynamicEntity, no es necesario crear nada en tiempo de ejecución
Y úsalo así
fuente
Sí, puede usar la emisión de reflexión para hacer esto. Manning tiene lo que parece ser un excelente libro sobre esto: Metaprogramación en .NET .
Por cierto: ¿por qué no usar una lista que contiene diccionarios o similares para almacenar cada registro con los nombres de campo como claves?
fuente