是否可以使用 Microsoft.SharePoint.Client 以编程方式获取 Sharepoint 站点的时区?

0 c# sharepoint csom

是否可以在 C# 中使用 Microsoft.SharePoint.Client 以编程方式获取 Sharepoint 站点的时区?我需要 Sharepoint 站点时区以将其与特定时区匹配。

lem*_*ari 5

不幸的是,对于 SharePoint 的客户端对象模型,无法获得时区本身。服务器对象模型和 SPServices 包含一个名为 RegionalSettings 的 SPWeb 属性,但是 CSOM 中缺少该属性。

这里的好处是 CSOM 有一个实用程序功能FormatDateTime,您可以使用该功能将特定字符串/日期转换为您网站的时区。

以下是它在简单控制台应用程序中使用的示例:

        ClientContext clientContext = new ClientContext("http://yoursite.com");
        Site site = clientContext.Site;

        DateTime dt = DateTime.Parse("04/24/2013 5:44PM").ToUniversalTime();
        ClientResult<string> cr = Utility.FormatDateTime(clientContext, clientContext.Web, dt, DateTimeFormat.DateTime);
        clientContext.ExecuteQuery();
        string value = cr.ToString();
        DateTime webdt = DateTime.Parse(cr.Value.ToString());
        Console.WriteLine(webdt.ToString());
        Console.Read();
Run Code Online (Sandbox Code Playgroud)

请注意,您需要在项目中包含 SharePoint 客户端 DLL 并正确引用它们。希望这可以帮助。