0

我们使用 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”。

任何帮助,将不胜感激。

4

1 回答 1

0

它的DisplayAttribute,不是DisplayNameAttributeName只是它的一个属性。

于 2012-12-10T17:19:56.623 回答