我正在开展项目,我需要将日期从一个列表迁移到另一个列表。我的源列表的日期时间格式为MM / DD / YY,我的目的地列表字段的日期时间格式为DD / MM / YY。当我在目的地解析价值时,它的转换不正确。
从列表字段中读取值的代码。
ClientContext ctx = new ClientContext(targetURL);
ctx.Credentials = new SharePointOnlineCredentials(userName, passWord);
ctx.Load(ctx.Web);
SP.ListCollection listCol = web.Lists;
ctx.Load(listCol);
SP.List list = listCollection.GetByTitle("ListTitle");
SP.CamlQuery camlQuery = new SP.CamlQuery();
camlQuery.ViewXml = "";
SP.ListItemCollection listItemCollection = list.GetItems(camlQuery);
ctx.Load(listItemCollection);
//Execute Query
ctx.ExecuteQuery();
foreach (ListItem _item in listItemCollection)
{
ctx.Load(_item,tmp => tmp.FieldValuesAsHtml);
ctx.ExecuteQuery();
foreach (var fieldValue in _item.FieldValuesAsHtml.FieldValues)
{
string _value = fieldValue.Value; //for datetime field returning value as string
}
}
将_Value转换为目的地列表中的日期时间
destItem["Date"]= Convert.ToDateTime(_value);
//date is getting changed as DateTime format is diffrent.
如何获取源列表的DateTime格式?
答案 0 :(得分:0)
最后我得到了答案。我们可以使用Regional Settings属性获取DateTime格式。
ClientContext.Load(f_Web, website => website.RegionalSettings)
ClientContext.ExecuteQuery();
var format = f_Web.RegionalSettings.DateFormat;