使用CSOM从SharePoint 2013内部部署获取本地化列表/站点名称

时间:2016-07-04 13:54:28

标签: c# .net sharepoint-2013 csom

我的SharePoint 2013服务器上有多语言网站(内部部署),我想通过C#中的.NET托管API(CSOM)检索本地化网站和列表名称。

我尝试使用Web对象中的"TitleResource" property对象及其GetValueForUICulture()方法:

var web = spContext.Web;
var webTitleRes = web.TitleResource;
var webFrenchTitle = webTitleRes.GetValueForUICulture("fr").Value;
spContext.ExecuteQuery();

但它在最后一行崩溃说该字段/属性不存在:

Fig. 1

我之前曾尝试更新网络" LocaleID"从Office PnP项目的示例应用程序中显示的值:check here

但服务器抛出异常,说我没有足够的许可来做到这一点:

Fig. 2

好吧,我真的不想更新服务器上的LocaleID,我只是想在本地检索本地化的标题,所以这似乎是一种完全错误的方式。

如何从SharePoint服务器检索本地化标题的字符串?我错过了什么?

更新

作为参考,似乎 TitleResource DescriptionResource 属性只能从" online" SharePoint版本,但MSDN文档没有提及任何相关内容,导致这些内容使用不当:

Fig. 3

它可能适用于2016年全新版本,顺便说一句。我们会看到。

1 个答案:

答案 0 :(得分:0)

UiCulture应该是一个文化对象。

试试这个:

blablabla.GetValueForUICulture(new CultureInfo(1036)).Value;