我希望这个问题很容易,但是我正在搜索一个多小时,我只是找不到答案.所以我有一个asp.net mvc 2应用程序,其中一个表单包含一个日期文本框与
jquery datepicker.我将datepicker中的日期格式设置为dd.mm.yyyy.我的问题是,在模型绑定上,这个日期被解释为mm.dd.yyyy,所以当模型达到我的动作方法时,模型的DateTime属性是不正确的(日和月是相反的,如果不可能的话反转客户端验证不让我保存项目).我不想改变文化,但我想以某种方式指定模型绑定器如何解释日期.有可能吗?
非常感谢
解决方法
This blog post说明了如何指定要由MVC模型绑定器使用的特定日期格式.
您将需要创建一个自定义模型binder实现,该实现了解日期格式,然后将其与Global.asax.cs中的DateTime类型相关联:
protected void Application_Start() { //... var binder = new DateTimeModelBinder(GetCustomDateFormat()); ModelBinders.Binders.Add(typeof(DateTime),binder); }