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