我遇到了一个问题,我遇到了日期时间字段的客户端验证问题.当我尝试提交时,它一直告诉我日期无效(2013年7月27日).但是,如果我将日期转换为美国格式(2013年7月27日).
我的观点模型如下,
[DataType(DataType.Date), DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public DateTime? AuditDate { get; set; }
Run Code Online (Sandbox Code Playgroud)
的index.html
@Html.TextBoxFor(m => m.AuditDate)
Run Code Online (Sandbox Code Playgroud)
我已经更新了我的web.config
<globalization culture="en-AU" uiCulture="en-AU" />
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
谢谢
我是MVC 3和JQuery Validation的新手,所以我能得到的任何帮助都将非常感激.
我的开发平台是.NET MVC 3网站.我正在使用内置的不显眼的javascript进行表单验证.有没有办法将日期更改为有效日期的其他格式.据我所知,有效格式为dd/mm/yy.是否可以将有效日期格式更改为"2012年4月3日"?
我的视图模型有一个字段
[Required]
DateTime OrderDate { get; set; }
Run Code Online (Sandbox Code Playgroud)
我知道MVC 3正在使用jquery验证,所以我认为解决方案需要更改为jquery validate,也不确定如何将其连接到MVC,因此它的工作方式与使用数据的所有其他内置数据验证相同注释.
谢谢.
我正在尝试格式化DateTime变量,以便将其显示为MMMM dd, yyyy,例如,2011年6月10日.
在我看来,我有:
@Html.Raw(modelItem => item.MyDateTimeProperty.ToString("MMMM dd, yyyy"))
Run Code Online (Sandbox Code Playgroud)
这给我一个例外如下:
lambda expression cannot be converted to 'string' because 'string' is not
a delegate type
Run Code Online (Sandbox Code Playgroud)
当然,item.MyDateTimeProperty数据类型是DateTime.
作为参考,我使用了以下示例[1]
// The example displays the following output:
// Today is June 10, 2011.
DateTime thisDate1 = new DateTime(2011, 6, 10);
Console.WriteLine("Today is " + thisDate1.ToString("MMMM dd, yyyy") + ".");
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
编辑
我看到stack247答案是理想环境中最合适的解决方案.但是,在我的情况下,控制器返回一个在我的模型类中不存在的对象.这是因为我正在使用API来获取数据.这就是为什么Anrei我的解决方案最适合我的原因.
@Html.Raw(item.MyDateTimeProperty.ToString("MMMM dd, yyyy"))
Run Code Online (Sandbox Code Playgroud)
[1] http://msdn.microsoft.com/en-US/library/8kb3ddd4%28v=vs.110%29.aspx