【问题标题】:Internationalization and C# method attributes?国际化和 C# 方法属性?
【发布时间】:2009-07-03 09:32:10
【问题描述】:

我正在处理一些 SharePoint Web 部件,并试图使它们尽可能独立于区域设置。我在资源文件中包含了大部分文本,我正在查看我的 Web 部件上的属性:

[WebBrowsable(true),
Category("My Category"),
WebDisplayName("Display Name here"),
WebDescription("Tells you all about it"),
Personalizable(PersonalizationScope.Shared)]
public string SomeProperty { get; set; }

如果将那些硬编码的字符串替换为对不使用英语的用户(在本例中为 SharePoint 管理员)更有用的字符串,那就太好了。

如果有的话,我有什么选择?

【问题讨论】:

    标签: c# sharepoint resources attributes internationalization


    【解决方案1】:

    您正在寻找Microsoft.SharePoint.WebPartPages.ResourcesAttribute 类。

    This blog post 有它的使用描述和一个简单的例子。

    //RESOURCES LOCALIZATION
    //Property that is localized. Use the ResourceAttibute.
    //[ResourcesAttribute (PropertyNameID=1, CategoryID=2, DescriptionID=3)]
    [Resources("PropNameResID", "PropCategoryResID", "PropDescriptionResID")]
    

    【讨论】:

      【解决方案2】:

      这是我对spoon16答案的实现:

          [WebBrowsable(true),
          Resources("SearchWebPartWebDisplayName", 
          "SearchWebPartCategory", 
          "SearchWebPartWebDescription"),
          FriendlyName("Display Name here"),
          Description("Tells you all about it"),
          Category("My Category"),
          Personalizable(PersonalizationScope.Shared)]
          public string SomeProperty { get; set; }
      
          public override string LoadResource(string id)
          {
              string result = Properties.Resources.ResourceManager.GetString(id);
              return result;
          }
      

      注意属性名称的变化及其在属性块中的顺序。

      我还必须更改我的 WebPart 以从 Microsoft.SharePoint.WebPartPages.WebPart 派生,并随之更改我处理 WebPart 的宽度和高度的方式。

      【讨论】:

        【解决方案3】:

        您可以从普通的 ASP.NET 属性创建子类并将其本地化。此方法是旧方法,不应用于您的新 Web 部件。不需要时不要从 SP Web 部件派生。

        http://forums.asp.net/t/937207.aspx

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-06-05
          • 1970-01-01
          • 2016-09-20
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-01-04
          • 2017-09-24
          相关资源
          最近更新 更多