【问题标题】:Kendo doesn't load some of the culture messages剑道不加载某些文化信息
【发布时间】:2015-04-26 11:32:03
【问题描述】:

我正在尝试为我的应用本地化 Kendo。我的语言最初不受支持,所以我将本地化版本添加到 messages/kendo.messages.xx-XX.min.js

  1. 我将此行添加到我的web.config<globalization uiCulture="xx-XX" culture="xx-XX"></globalization>

  2. 我已经将这些脚本包含在剑道的脚本下:

<script src="~/Scripts/kendo/2014.3.1314/kendo.culture.xx-XX.min.js"></script> <script src="~/Scripts/kendo/2014.3.1314/messages/kendo.messages.xx-XX.min.js"></script>

Kendo 仍然为我的网格视图显示一些英文消息。如果我将uiCulture 值更改为en-US,它不会加载英文文件并且仍然显示我编辑的版本。但是en-US 以外的任何值都可以正常工作,并且 Kendo 使用其本地化消息。是的,我确定我没有意外编辑en-US 文件...有什么建议吗?

【问题讨论】:

    标签: asp.net-mvc kendo-ui kendo-asp.net-mvc


    【解决方案1】:

    Kendo Globalization Overview

    将此添加到您的_Layout.cshtml

    @{
        var culture = System.Threading.Thread.CurrentThread.CurrentCulture.ToString();
    }
    <script src="@Url.Content("~/Scripts/kendo/2014.3.1314/kendo.culture." + culture + ".min.js")"></script>    
    <script type="text/javascript">
        kendo.culture("@culture");
    </script>
    

    例子:

    【讨论】:

    • 感谢 Vash,但它没有用。我得到了Thread.CurrentThread.CurrentCulture.Name 的真正价值,在 VS 中我可以看到我的文件正在加载,但我仍然有问题。还有一件事,我的剑道似乎没有culture 变量,而只有cultures
    • 你是否在使用 globalize.js,并在加载剑道脚本后使用 kendo.culture()?
    • 我把脚本放在剑道后面,但我没有globalize.js
    • 我已经阅读了该链接,这正是我正在做的。我也在web.config 中设置了文化价值。
    【解决方案2】:

    我真的心不在焉。我应该为任何有类似问题的人回答这个问题。正如Kendo's documentation .js 中所指出的,文件与 MVC 应用程序无关。你必须:

    1. 打开Kendo.Mvc.sln解决方案。
    2. Resources 文件夹中,复制Messages.resx 文件并将其重命名为您的文化代码,例如Messages.en-US
    3. 将解决方案重建为Release
    4. Kendo.Mvc.dll 文件和文化代码文件夹从bin/release 文件夹复制到项目的lib/KENDOUIMVC/{Date} 文件夹。
    5. 在您的web.config 文件中设置Globalization 标记的uiCulture 值,一切顺利!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多