【问题标题】:MVC ignores culture settings in web.configMVC 忽略 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

标签: c# asp.net-mvc culture


【解决方案1】:

可能的原因之一如下:您向 Web 服务器发送 GET(而不是 POST)请求。

您的自定义文化将仅用于处理 POST 请求。对于 GET 请求,始终使用不变的文化。

但我建议您在此处发布最小的工作示例。

【讨论】:

    猜你喜欢
    • 2019-03-17
    • 1970-01-01
    • 2012-10-06
    • 1970-01-01
    • 2011-10-12
    • 1970-01-01
    • 2013-11-05
    • 2017-06-23
    • 1970-01-01
    相关资源
    最近更新 更多