我正在使用实体框架代码fisrt让我们说这是我的类:
public class Class1
{
public string property1{get;set;}
public string property2{get;set;}
}
我要求实现用户可以在我的实体框架代码中添加“动态属性”第一个类,但不更改模型并丢弃数据库!它有意义吗?你会如何实现这个要求?理解它对我来说非常重要,因为在我的真实模型中,我可能有30个课程,我想了解实施它的最佳策略或者对我的客户说 这个要求实施起来太难了,不可靠。
答案 0 :(得分:1)
您可以在表中创建一个String
属性,JSON序列化包含“动态”属性的自定义对象。
-
public class Class1
{
public string property1{get;set;}
public string property2{get;set;}
public string CustomProperties { get; set; }
}
然后在代码中你有一些字典或任何你指定属性名称和它的值:
Dictionary<string, object> customProperties;
使用“动态”数据填充这些属性后,只需将其序列化为字符串(使用JSON,XML等)并将ti保存到表中的CustomProperties字段。
因此,当您需要阅读这些属性时,您只需将其反序列化并读取您需要的值。