在运行时创建一个类并在.Net中使用它?

时间:2014-11-08 05:34:55

标签: .net c sql-server reflection reflection.emit

我想在运行时根据存储在SQL Server上的属性和字段类型创建模型。

例如,我有一个名为test

的表
UserName varchar(50) not null,
Password varchar(4) not null,
IsAdmin bit not null

所以我必须在运行时创建这个模型

public class Test
{
    public string UserName{get;set;}
    public string Password{get;set;}
    public bool IsAdmin{get; set; }
}

1 个答案:

答案 0 :(得分:0)

您要做的事情既复杂又容易出错。在运行时生成代码通常是一个不好的想法。这种设计通常只是隐藏了代码库,架构和设计实现中的更深层次的问题。

话虽如此,自.NET 4.0起可以声明dynamicvariables。您可以使用这些(列表或字典)的集合来存储它们,而不是生成整个类。