博客地址:http://blog.csdn.net/FoxDave

上一节讲了SharePoint Online网站多语言的实现原理机制,本节主要从编程的角度来谈一下如何进行相关的设置。
下面列出的代码函数方法在命令行中运行即可。至于Context如何获取可以参考我以前的blog。

Site和List级别的国际化
首先咱们先创建一个测试List,如下代码:
private static void CreateCustomList(ClientContext ctx, Web web)
{
ListCollection listCollection = ctx.Web.Lists;
ctx.Load(listCollection, lists => lists.Include(list => list.Title).
Where(list => list.Title == "LocalizeMe"));
ctx.ExecuteQuery();
// Create the list, if it's not there...
if (listCollection.Count == 0)
{
ListCreationInformation newList = new ListCreationInformation();
newList.Title = "LocalizeMe";
newList.QuickLaunchOption = QuickLaunchOptions.On;
newList.TemplateType = (int)ListTemplateType.GenericList;
newList.Description = "LocalizeMe sample list";
List list = web.Lists.Add(newList);
ctx.ExecuteQuery();
}
}
上面的代码很简单,不做过多解释了,就是创建一个名为LocalizeMe的List。
接下来的代码演示了如何设置多语言的属性。

private static void LocalizeSiteAndList(ClientContext cc, Web web)
{
// Localize site title
web.TitleResource.SetValueForUICulture("en-US", "Localize Me");
web.TitleResource.SetValueForUICulture("fi-FI", "Kielikäännä minut");
web.TitleResource.SetValueForUICulture("fr-FR", "Localize Me to French");
// Site description
web.DescriptionResource.SetValueForUICulture("en-US",
"Localize Me site sample");
web.DescriptionResource.SetValueForUICulture("fi-FI",
"Kielikäännetty saitti");
web.DescriptionResource.SetValueForUICulture("fr-FR",
"Localize to French in description");
web.Update();
cc.ExecuteQuery(); // Localize custom list which was created previously
List list = cc.Web.Lists.GetByTitle("LocalizeMe");
cc.Load(list);
cc.ExecuteQuery();
list.TitleResource.SetValueForUICulture("en-US", "Localize Me");
list.TitleResource.SetValueForUICulture("fi-FI", "Kielikäännä minut");
list.TitleResource.SetValueForUICulture("fr-FR", "French text for title");
// Description
list.DescriptionResource.SetValueForUICulture("en-US",
"This is localization CSOM usage example list.");
list.DescriptionResource.SetValueForUICulture("fi-FI",
"Tämä esimerkki näyttää miten voit kielikääntää listoja.");
list.DescriptionResource.SetValueForUICulture("fr-FR",
"I have no idea how to translate this to French.");
list.Update();
cc.ExecuteQuery();
}

简单说明一下,对于需要国际化的内容,我们需要获取对应的SharePoint Object之后,操作相应的XXResource属性,如上所示,对Site和List的Title和Description进行了国际化。

执行完代码之后,根据当前用户的prefer language,就可以显示不同的语言了。

最新文章

  1. LK产品如何提高通信速率
  2. 第3月第15天 afconvert lame
  3. 【Alpha】Daily Scrum Meeting第十次
  4. js之事件冒泡和事件捕获
  5. Servers
  6. memcached使用详解
  7. java-cmd-命令行编译和运行java文件
  8. [转]前端开发必备 40款优秀CSS代码编写工具推荐
  9. Html table 实现Excel多格粘贴
  10. Django 调用报错 " ImportError: Couldn't import Django. "
  11. Visual Studio 2017 激活密钥 [复制记录]
  12. 《mysql必知必会》学习_第12章_20180801_欢
  13. 2018-2019-2 20165302 Exp5 MSF基础应用
  14. 洛谷P2766 最长递增子序列问题
  15. nodejs实现拉钩网爬虫
  16. MDK5在调试中崩溃,提示“IDE已停止工作”
  17. 160505、oracle 修改字符集 修改为ZHS16GBK
  18. HUAS 1483 mex(离线+线段树)
  19. C#ActiveX安装项目
  20. Leetcode 944. Delete Columns to Make Sorted

热门文章

  1. 20190104xlVBA_在课表里标记自己的课程
  2. Wannafly挑战赛26 B 冥土追魂
  3. Vue音乐项目笔记(一)
  4. python基础之数据类型操作补充,集合及其操作,深浅拷贝
  5. Building Fire Stations ZOJ - 3820 (二分,树的直径)
  6. 排座椅(洛谷P1056)
  7. 第二阶段——个人工作总结DAY02
  8. CF-503div2-A/B/C
  9. .NET面试问题二
  10. [转载] C++ STL中判断list为空,size()==0和empty()有什么区别