如何在运行时使用数据库条目创建类?
例如:
ID(int):
名称(字符串):
内容(字符串):
public class Product
{
public string Name { get; set; }
public string Family { get; set; }
public int Age { get; set; }
}
或其他模式
用于动态页面生成器
更新:
更准确地说,我的意思是我需要为每个数据库记录创建一个类,而不是每个表的类,这个类最能够让我能够使用像CRUD这样的SQL常用指令
答案 0 :(得分:2)
如果您在编译时不了解数据,那么在运行时构建类没有多大意义 - 您也可以使用(gulp)DataTable
(去洗手)。如果你做在编译时知道这个类,那么编写类(正如你所做的那样)并使用像“dapper”这样的工具,或者使用ORM诸如EF,NHibernate,LINQ-to-SQL等工具,它们将从数据库(在设计时)为您生成类型,并允许您的代码与类型进行交互。
答案 1 :(得分:2)
为什么要创建针对数据库条目的类?我想你想为一个类的每个条目创建一个对象,比如说Person。最好是为每个表创建类,然后针对数据库中的记录为这些类创建对象。我认为您正在寻找ORM,请查看Linq to SQL。你也可以create code at runtime使用反射,但我真的不认为需要它。
答案 2 :(得分:1)
你不能真正动态创建类(嗯,你可以,但它是一个巨大的反模式而不是我推荐的东西)。我看到它的方式,你有两个选择:
1)使用.Net 4动态关键字。
2)创建一个“通用”类,其中包含保存类型,标识符和序列化数据的属性。