是否可以从该属性的编辑器模板中访问属性的自定义属性?
例如,我有一个带有自定义属性的简单类:
public class MyClass
{
[MyCustomAttribute("myCustomValue")]
public string Name { get; set; }
}
然后我有string
的编辑器模板,我想检查字符串属性是否具有该自定义属性。
我尝试从视图中访问类型和CustomAttributes
,但是当模型的实例为null时,这将不起作用。
答案 0 :(得分:2)
我在编辑器模板中使用以下代码从属性
获取属性的值var Member = ViewData.ModelMetadata.ContainerType.GetMember(ViewData.ModelMetadata.PropertyName);
var Attribute = Member[0].GetCustomAttribute<MyCustomAttribute>();
if(Attribute != null)
{
<p>@Attribute.MyProperty</p>
}
代码有点粗糙并做出一些假设,但你得到了一般的想法。