Sharepoint客户端API无效的DateTime字段

时间:2011-05-03 11:05:15

标签: c# silverlight sharepoint sharepoint-2010

我有一个包含DateTime字段的SharePoint列表。我正在使用Silveright SharePoint客户端API来更新此字段。当我将值保存到该字段时,它将保存并在SharePoint中显示没有问题。

但是当我试图获得价值时,它绝对不同(减去一些时间)。怎么了?

在SharePoint中,日期时间为:

enter image description here

加载代码:

clientContext.Load(contactItem, item => item[Constants.TipFields.Title],
    item => item[Constants.TipFields.Description],
    item => item[Constants.TipFields.UserDefinedDateTime],
    item => item.Id);`

我的日期不正确:

var description = tipItem[Constants.TipFields.Description] as String;
var title = tipItem[Constants.TipFields.Title] as String;
var date = tipItem[Constants.TipFields.UserDefinedDateTime] as DateTime;

加载的日期时间是: enter image description here

这里有什么问题?

2 个答案:

答案 0 :(得分:5)

Sharepoint以UTC格式存储所有日期字段。也就是说,如果要在列表中保存日期时间字段,Sharepoint实际上会将您选择的时间转换为UTC,并将其转换回该人在检索时所处的任何时区。

首先检查服务器时区与客户之间是否存在差异。

答案 1 :(得分:-1)

您可以使用简单的纯文本或自定义字段来解决此错误(sharepoint中的功能),以便以UTC格式存储特定的日期时间。