我们使用 EF4 数据库优先方法来创建在上下文类中找到的所有实体。我现在尝试将显示名称属性添加到对象的属性之一,如下所示:
[MetadataType(typeof(OpportunityMetaData))]
public partial class Opportunity : EntityObject
{
}
public class OpportunityMetaData
{
[Display(Name = "Worked By")]
public int WorkedById { get; set; }
}
然后在一个测试页面上,使用反射,我试图得到一个输出,上面写着“Worked By”,如下所示:
var attrType = typeof(DisplayNameAttribute);
var property = typeof(Opportunity).GetProperty("WorkedById");
Response.Write(((DisplayNameAttribute)property.GetCustomAttributes(attrType, false).FirstOrDefault()).DisplayName);
但这只是给Object Reference not set to an instance of an object
. 或者,如果我只是Response.Write
属性,它会写出“WorkedById”而不是“Worked By”。
任何帮助,将不胜感激。