[英]Multiple metadata classes for entity
假设我有2个实体,一个是UserMaster
另一个是ProjectMaster
,现在这两个实体中的通用属性都很少,我需要对这两个通用属性集应用相同的数据注释和属性,这是我使用元数据类完成的,现在我的问题是对于实体之间所有这些通用属性,我都具有通用的元数据类,因此我不需要一次又一次地为通用属性应用数据注释和属性,如果需要,那么如何实现此目的。
You can create a base metadata class and the other metadata class derive from the base and add some other properties. 您可以创建一个基础元数据类,另一个元数据类从该基础派生并添加其他一些属性。
Example: 例:
In the below example I supposed you can't derive Class2
from Class1
so I have inheritance only between metadata classes, otherwise you can simply have inheritance between your model classes. 在下面的示例中,我假设您不能从
Class1
派生Class2
,所以我仅在元数据类之间具有继承,否则,您可以在模型类之间简单地继承。
[MetadataType(typeof(Class1Metadata))]
public class Class1
{
public string Id { get; set; }
public string Name { get; set; }
}
[MetadataType(typeof(Class2Metadata))]
public class Class2
{
public string Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
}
public class Class1Metadata
{
[Display(Name="Id1")]
public string Id { get; set; }
[Display(Name = "Name1")]
public string Name { get; set; }
}
public class Class2Metadata:Class1Metadata
{
[Display(Name = "Description2")]
public string Description { get; set; }
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.