Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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
Asp.net mvc 带有MVC2 RTM的DataAnnotationsModelBinder_Asp.net Mvc - Fatal编程技术网

Asp.net mvc 带有MVC2 RTM的DataAnnotationsModelBinder

Asp.net mvc 带有MVC2 RTM的DataAnnotationsModelBinder,asp.net-mvc,Asp.net Mvc,尝试使用DataAnnotations验证模型,但DefaulModelBinder会覆盖我所需的属性错误消息,并且从不将我的错误消息用于无效的数据输入。始终显示“值”对于“属性名称”无效 在另一个问题中,我看到MVC2使用DataAnnotationsModelBinder,但在MVC2二进制文件中找不到任何类。我下载了MVC futures的源代码,并更改了一些源代码,以便为.NET4.0编译它,但尽管我编译成功,但它存在兼容性问题,无法按预期工作 欢迎提供任何帮助。发生这种情况的原因是,D

尝试使用DataAnnotations验证模型,但DefaulModelBinder会覆盖我所需的属性错误消息,并且从不将我的错误消息用于无效的数据输入。始终显示“值”对于“属性名称”无效

在另一个问题中,我看到MVC2使用DataAnnotationsModelBinder,但在MVC2二进制文件中找不到任何类。我下载了MVC futures的源代码,并更改了一些源代码,以便为.NET4.0编译它,但尽管我编译成功,但它存在兼容性问题,无法按预期工作


欢迎提供任何帮助。

发生这种情况的原因是,
DefaultModelBinder
尝试将输入值强制转换为接收模型属性的类型时引发异常

您可以使用
string
作为接收模型上属性的类型
或者通过实现IModelBinder来创建自定义模型绑定器,并处理验证。

发生这种情况是因为当它尝试将输入值转换为接收模型属性的类型时,
DefaultModelBinder
中引发了异常

您可以使用
string
作为接收模型上属性的类型

或者通过实现IModelBinder来创建自定义模型绑定器,并处理验证。

不要尝试将DataAnnotationsModelBinder与MVC 2 RTM一起使用。MVC 2 RTM的DefaultModelBinder已包含DataAnnotationsModelBinder示例中存在的所有逻辑。

请勿尝试将DataAnnotationsModelBinder与MVC 2 RTM一起使用。MVC 2 RTM的DefaultModelBinder已经包含DataAnnotationsModelBinder示例中存在的所有逻辑。

是的,我知道这一点,我的问题就是,如何将DataAnnotationsModelBinder与MVC 2 RTM一起使用。当我在模型类上使用验证属性时,DefaultModelBinder无法按预期工作。是的,我知道这一点,我的问题就是,如何将DataAnnotationsModelBinder与MVC 2 RTM一起使用。当我在模型类上使用验证属性时,DefaultModelBinder无法按预期工作。这是一个升级的项目吗?DefaultModelBinder存在于System.Web.Mvc命名空间中,应在Mvc 2中注册为默认绑定器。您是否在Global.asax中明确注册它?如果是,请将其删除,因为默认情况下它已注册。抱歉,已将DefaultModelBinder更改为DataAnnotationsModelBinder。您的问题中没有足够的信息,无法购买。你能回答上面的问题吗,它们仍然是相关的。关于活页夹,您的Global.asax中有哪些内容?这是升级的MVC1应用程序吗?好的。这是一个使用VisualStudio2010创建的新项目。我没有为DefaultModelBinder做任何注册。我只想使用DataAnnotationsModelBinder,但它不包含在ASPNET MVC中。默认asp.net项目应已启用DataAnnotationsModelBinder。你不应该做任何事情来让它工作。你想自己注册活页夹吗?这是升级项目吗?DefaultModelBinder存在于System.Web.Mvc命名空间中,应在Mvc 2中注册为默认绑定器。您是否在Global.asax中明确注册它?如果是,请将其删除,因为默认情况下它已注册。抱歉,已将DefaultModelBinder更改为DataAnnotationsModelBinder。您的问题中没有足够的信息,无法购买。你能回答上面的问题吗,它们仍然是相关的。关于活页夹,您的Global.asax中有哪些内容?这是升级的MVC1应用程序吗?好的。这是一个使用VisualStudio2010创建的新项目。我没有为DefaultModelBinder做任何注册。我只想使用DataAnnotationsModelBinder,但它不包含在ASPNET MVC中。默认asp.net项目应已启用DataAnnotationsModelBinder。你不应该做任何事情来让它工作。你想自己注册活页夹吗?那为什么它不显示我用[Required]属性指定的错误消息呢?它显示“x是必填字段”。对于显示“x不是y的有效值”的无效类型,所有标准默认型号活页夹错误消息。。它不应该显示我在[DataType]错误消息属性中写入的错误消息吗?应该,是的。您的项目引用的System.ComponentModel.DataAnnotations版本是什么?可能是版本之间不匹配您的声明是什么样子的?你能给我们看一个不按预期运行的示例模型(带有属性)吗?那么为什么它不显示我用[Required]属性指定的错误消息呢?它显示“x是必填字段”。对于显示“x不是y的有效值”的无效类型,所有标准默认型号活页夹错误消息。。它不应该显示我在[DataType]错误消息属性中写入的错误消息吗?应该,是的。您的项目引用的System.ComponentModel.DataAnnotations版本是什么?可能是版本之间不匹配您的声明是什么样子的?您能否向我们展示一个行为不符合预期的示例模型(带有属性)?