【问题标题】:How does ASP.NET MVC globalization work with my own ResourceProvider?ASP.NET MVC 全球化如何与我自己的 ResourceProvider 一起工作?
【发布时间】:2010-08-16 07:59:09
【问题描述】:

我创建一个继承IResourceProvider的新类,并在web.config中注册它

<globalization resourceProviderFactoryType="xx.xxx.xxxx" uiCulture="auto" enableClientBasedCulture="true"/>

这个新类只是实现了

public GetObject(string resourceKey, CultureInfo culture)
{
   ....
}

这将从我自己的数据库中获取全球化文本。

问题是如何在验证属性中使用它,例如以下语法:

[StringLength(5, ErrorMessageResourceType = typeof(Global), ErrorMessageResourceName = "StringLength")]  
public string StringLength { get; set; }  

以及如何直接在视图中使用它? 在经典的网络表单中,我可以使用

<asp:Literal ID="test" runat="server" Text="<%$ resources:Text,123 %>"></asp:Literal>

谢谢

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-2 globalization


    【解决方案1】:

    以及如何直接在视图中使用它?

    您应该能够通过以下方式在视图中引用您的资源类:

    <%: xx.xxx.xxxx.IdOfString >
    

    如果您不想完全限定每个视图上的类/命名空间,您可以在 web.config 的 pages/namespaces 部分下声明 xx.xxx.xxxx 命名空间,然后您可以使用:

    <%: xxxx.IdOfString %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-29
      • 2011-07-27
      • 2023-04-10
      • 1970-01-01
      • 2011-04-17
      相关资源
      最近更新 更多