1

如何在运行时使用数据库条目来创建类?

例如:

标识(整数):

1

名称(字符串):

产品

内容(字符串):

public class Product
{
    public string Name { get; set; }

    public string Family { get; set; }

    public int Age { get; set; }      
}

或其他模式

它用于动态页面生成器


更新 :

更准确地说,我的意思是我需要为每个数据库记录创建一个类,而不是为每个表创建一个类,而且这个类最能让我使用 SQL 的常用指令,如 CRUD

4

3 回答 3

2

如果您在编译时不了解数据,那么在运行时构建一个类没有多大意义——您不妨使用 (gulp) DataTable(去洗手)。如果您在编译时确实了解该类,那么要么编写类(就像您所做的那样)并使用“dapper”之类的工具,或者使用诸如 EF、NHibernate、LINQ-to-SQL 等 ORM 工具将从数据库中为您生成类型(在设计时),并允许您的代码与类型进行交互。

于 2012-05-02T07:17:36.683 回答
2

为什么要针对数据库条目创建一个类?我想你想为一个类的每个条目创建对象,比如 Person。最好针对每个表创建类,然后针对这些类为数据库中的记录创建对象。我认为您正在寻找 ORM,请检查Linq to SQL。您也可以在运行时使用反射创建代码,但我真的不认为需要它。

于 2012-05-02T07:17:54.983 回答
1

你不能真正动态地创建类(嗯,你可以,但这是一个巨大的反模式,而不是我推荐的东西)。在我看来,你有两个选择:

1) 使用 .Net 4 动态关键字。

2) 创建一个“通用”类,其中包含保存类型、标识符和序列化数据的属性。

于 2012-05-02T07:13:37.563 回答