MVC 忽略 web.config 中的文化设置
Posted
技术标签:
【中文标题】MVC 忽略 web.config 中的文化设置【英文标题】:MVC ignores culture settings in web.config 【发布时间】:2018-11-11 16:44:08 【问题描述】:我正在用 C# 构建一个 MVC 网站以在丹麦使用,因此我在我的 web.config 文件中的 system.web.globalization 节点中设置了以下内容: 文化="da-DK" uiCulture="da-DK"
当我尝试输入 11 月 21 日的日期时。 2018 年 21-11-2018 在“html.EditorFor(model => model.Date ...”控件中,model.Date 是 DateTime,我收到一条错误消息:“字段日期必须是日期。”
如果我输入 2018 年 11 月 21 日,它会被接受,就好像文化是“en-US”一样,但由于该网站打算在丹麦使用,因此日期必须反映这一点。
我在互联网上发现很多帖子都有同样的问题,但没有一个答案可以解决我的问题 - 90% 的人说:“在 web.config 中设置文化”,但我已经做到了,但没有工作。
为了使它起作用,我缺少什么?
【问题讨论】:
您遇到的是客户端错误(因为jquery.validate.js
会根据MM/dd/yyyy
格式验证日期),而不是服务器端错误。您需要重新配置$.validator
- 请参阅Date of Birth validation keeps showing
【参考方案1】:
可能的原因之一如下:您向 Web 服务器发送 GET(而不是 POST)请求。
您的自定义文化将仅用于处理 POST 请求。对于 GET 请求,始终使用不变的文化。
但我建议您在此处发布最小的工作示例。
【讨论】:
以上是关于MVC 忽略 web.config 中的文化设置的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET MVC 中的文件大小上传限制:web.config(s) 中的 maxRequestLength 设置超过 1 个