Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.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# 自定义ValidationAttribute数据批注:GetClientValidationRules不返回任何规则_C#_Asp.net Mvc_Data Annotations - Fatal编程技术网

C# 自定义ValidationAttribute数据批注:GetClientValidationRules不返回任何规则

C# 自定义ValidationAttribute数据批注:GetClientValidationRules不返回任何规则,c#,asp.net-mvc,data-annotations,C#,Asp.net Mvc,Data Annotations,我有一个实现IClientValidatable的自定义ValidationAttribute,在我的“GetClientValidationRules”实现中,在给定特定条件下,我希望不返回任何规则。我尝试返回null,但在TextBoxFor处出现null异常。我尝试返回一个新的ModelClientValidationRule,抱怨该规则为空。我只想什么也不返回….您尝试过以下方法吗?这将返回一个空的规则列表 return Enumerable.Empty<ModelClientVa

我有一个实现IClientValidatable的自定义ValidationAttribute,在我的“GetClientValidationRules”实现中,在给定特定条件下,我希望不返回任何规则。我尝试返回null,但在TextBoxFor处出现null异常。我尝试返回一个新的ModelClientValidationRule,抱怨该规则为空。我只想什么也不返回….

您尝试过以下方法吗?这将返回一个空的规则列表

return Enumerable.Empty<ModelClientValidationRule>()
返回可枚举的.Empty()

不会编译,因为迭代器不能包含返回值。有其他的语法可以返回吗?嗯,你能发布你的代码吗?(请编辑您的问题!)我给出的代码应该放在方法
GetClientValidationRules()
中,该方法应该返回
IEnumerable
。。。这个错误消息没有多大意义,因为方法必须返回一些东西……我将收益率返回与常规返回混合在一起,这会产生我提到的编译错误。编译器无法区分这一点似乎很愚蠢,但我确信这是有原因的。更好的错误消息会有所帮助。现在我总是返回IEnumerable,在这两种情况下都不会返回一条规则,是的,您的解决方案是有效的。谢谢