Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 动态获取/设置特定于模型的DataAnnotation_C#_Asp.net Mvc_Asp.net Mvc 5_Data Annotations - Fatal编程技术网

C# 动态获取/设置特定于模型的DataAnnotation

C# 动态获取/设置特定于模型的DataAnnotation,c#,asp.net-mvc,asp.net-mvc-5,data-annotations,C#,Asp.net Mvc,Asp.net Mvc 5,Data Annotations,我试图在运行时设置一个数据注释。这可以使用DataAnnotationsModelValidatorProvider类进行设置,但我正在尝试设置特定于每个模型的数据注释。我试图从XML文件中获取每个属性的每个数据注释的输入。当我有了一个源文件,从中可以获得模型中每个属性的注释时,它就开始工作了 但是有没有一种方法允许管理员用户动态地设置数据注释?比如说,当管理员选择模型时,模型中存在的属性将显示在列表中,并且在选择属性时,管理员应显示在当前上下文中定义的数据注释属性列表(以便他可以选择)。这是否

我试图在运行时设置一个数据注释。这可以使用
DataAnnotationsModelValidatorProvider
类进行设置,但我正在尝试设置特定于每个模型的数据注释。我试图从XML文件中获取每个属性的每个数据注释的输入。当我有了一个源文件,从中可以获得模型中每个属性的注释时,它就开始工作了


但是有没有一种方法允许管理员用户动态地设置数据注释?比如说,当管理员选择模型时,模型中存在的属性将显示在列表中,并且在选择属性时,管理员应显示在当前上下文中定义的数据注释属性列表(以便他可以选择)。这是否可行?

是否要选择引用程序集中的所有
validationAttribute
?它可以通过以下方式完成:选择(an=>Assembly.Load(an)).SelectMany(asmb=>asmb.ExportedTypes.Where(t=>typeof(ValidationAttribute).IsAssignableFrom(t)).ToArray()我以前必须生成一个包含所有
DisplayName
模型属性的列表,我使用C#reflection来完成这个任务。至于设置它们,我不太确定。这不是更好地使用FluentApi而不是数据注释吗?