关于sharepoint时间格式常见问题

一般情况下,在asp.net中,使用时间控件或者时间类型的值,都是例如"2013-01-01"这样的格式,但是在sharepoint中,格式比较特殊,需要特殊转换,这里记录下,如何对时间进行sharepoint格式转换,转换方法如下:

SPUtility.CreateISO8601DateTimeFromSystemDateTime(DateTime.Parse(“2013-03-21”));

在CAML查询,也是需要这样转换,方法如下:

string queryStr= @"<Where>
                              <Geq>
                                 <FieldRef Name=""Created"" />
                                 <Value Type=""DateTime"" >" + SPUtility.CreateISO8601DateTimeFromSystemDateTime(DateTime.Parse(txtStartCreateTime.SelectedDate.ToShortDateString())) + @"</Value>
                              </Geq>
                           </Where>";

 

以前还出现过一个问题,不知道为什么,获取sharepoint的某些时间值,比实际值少了8个小时,这个问题查了很多资料,最后才发现,也是需要进行时间格式转换,原来sharepoint提供了一个SPTimeZone的方法,顺便也把这个代码记录下。

SPWeb web = SPContext.Current.Web;
SPTimeZone timeZone = web.RegionalSettings.TimeZone;
DateTime date = timeZone.LocalTimeToUTC(Convert.ToDateTime(""));

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值