在MVC 4中,我创建了一个ADO.NET实体数据模型(使用数据库优先方法),然后在项目中添加了一个类来添加自定义属性,如 DisplayAttribute 或 DataTypeAttribute < /强>
示例: -
[MetadataType(typeof(UploadFilesMetaData))]
//UploadFiles is the class defined in my Model Object
public partial class UploadFiles
{
}
//MetaData class to add attributes
public partial class UploadFilesMetaData
{
[Required(AllowEmptyStrings = false, ErrorMessage = "Document Name is required field.")]
[DataType(DataType.Text)]
[Display(Name = "Document Name")]
public string DocumentName_vch { get; set; }
[DataType(DataType.Text)]
[Display(Name = "Document Description")]
public string DocumentDescription_vch { get; set; }
}
我的要求是在运行时读取这些属性。
但问题是代码“ type.GetProperties()。ElementAt(1).CustomAttributes ”返回0。
**
上述代码返回预期结果
**如果我向我的模型类添加属性,如UploadFiles。但是这种方法的问题在于,每当我从数据库更新模型时,属性代码都会被覆盖。
请帮忙......
答案 0 :(得分:0)
您是否在控制器/ API控制器上获取文件。从问题来看,你真正想要的是不清楚!!为什么要更改实体模型对象。强烈建议在其他位置编写自定义类,而不是在ADO.NET生成的模型上编写。