2011-07-04 78 views
3

是否可以使用Sharepoint Client ObjectModel更新創建/修改字段而不更新版本?從客戶端ObjectModel更新ListItem而不更改版本

var file = _ClientContext.Web.GetFileByServerRelativeUrl(serverRelativeUrl); 
_ClientContext.Load(file); 
_ClientContext.ExecuteQuery(); 
ListItem listItem = file.ListItemAllFields; 
listItem["Created"] = info.SourceFile.CreationTime; 
listItem["Modified"] = info.SourceFile.LastWriteTime; 
MapMembers(listItem, info.MetaData); 
listItem.Update(); 

listItem.SystemUpdate/Update(false)在Client ObjectModel中不可用。

感謝

+0

你有沒有能夠解決這個問題?我在這裏遇到同樣的問題,我真的很想知道是否有辦法做到這一點。 – Carl

回答

7
Microsoft.SharePoint.Client.File lp_newFile = lp_web.GetFileByServerRelativeUrl(lp_uri.LocalPath); 
lp_context.Load(lp_newFile); 
lp_context.ExecuteQuery(); 

//check out to make sure not to create multiple versions 
lp_newFile.CheckOut(); 

ListItem lp_item = lp_newFile.ListItemAllFields; 
listItem["Created"] = info.SourceFile.CreationTime; 
listItem["Modified"] = info.SourceFile.LastWriteTime; 
listItem.Update(); 

// use OverwriteCheckIn type to make sure not to create multiple versions 
lp_newFile.CheckIn(string.Empty, CheckinType.OverwriteCheckIn);