如何使用csom代码批量创建sharepoint列表项
有人能告诉我如何使用CSOM代码批量创建多个SharePoint列表项吗 我指的是使用CSOM代码创建批处理,类似于下面的代码。。下面的代码是在服务器对象模型中,我希望在CSOM中实现相同的功能 区域[方法:批量添加列表项详细信息]如何使用csom代码批量创建sharepoint列表项,sharepoint,sharepoint-2010,sharepoint-2013,Sharepoint,Sharepoint 2010,Sharepoint 2013,有人能告诉我如何使用CSOM代码批量创建多个SharePoint列表项吗 我指的是使用CSOM代码创建批处理,类似于下面的代码。。下面的代码是在服务器对象模型中,我希望在CSOM中实现相同的功能 区域[方法:批量添加列表项详细信息] public void AddCanteenMenuDetails(字符串lstName,列表objCanteenMenuDetails) { StringBuilder sbinsertcantenmenu=新建StringBuilder(); sbinsertc
public void AddCanteenMenuDetails(字符串lstName,列表objCanteenMenuDetails)
{
StringBuilder sbinsertcantenmenu=新建StringBuilder();
sbinsertcantenmenu.Append(“”);
使用(SPSite site=newspsite(SPContext.Current.site.Url))
{
使用(SPWeb=site.OpenWeb())
{
SPList lstCanteenMenu=web.Lists.TryGetList(lstName);
bool allowUnsafeUpdates=web.allowUnsafeUpdates;
web.AllowUnsafeUpdates=true;
web.Update();
foreach(餐厅菜单项在objCanteenMenuDetails中)
{
SBInsertCantenMenu.AppendFormat(“”)+
"{1}" +
“新的”+
“保存”+
"{2}" +
"{4}" +
"{5}" +
“”,item.Title,lstcanteenemenu.ID,item.Title,“urn:schemas-microsoft-com:office:office#”,item.LocationID,item.WeekDays);
}
sbinsertcantenmenu.Append(“”);
ProcessBatchData(sbinsertcantenmenu.ToString());
web.AllowUnsafeUpdates=AllowUnsafeUpdates;
web.Update();
}
}
}
#端区
您可以使用CSOM C#按如下方式进行尝试:
您可以使用CSOM C#进行如下尝试:
他已经回答了你的问题。只需根据原始代码中的一些值进行更新。他已经回答了你的问题。只需根据原始代码中的一些值进行更新。
public void AddCanteenMenuDetails(string lstName, List<CanteenMenuDetails> objCanteenMenuDetails)
{
StringBuilder sbInsertCanteenMenu = new StringBuilder();
sbInsertCanteenMenu.Append("<?xml version=\"1.0\" encoding=\"UTF-8\"?><Batch>");
using (SPSite site = new SPSite(SPContext.Current.Site.Url))
{
using (SPWeb web = site.OpenWeb())
{
SPList lstCanteenMenu = web.Lists.TryGetList(lstName);
bool allowUnsafeUpdates = web.AllowUnsafeUpdates;
web.AllowUnsafeUpdates = true;
web.Update();
foreach (CanteenMenuDetails item in objCanteenMenuDetails)
{
sbInsertCanteenMenu.AppendFormat("<Method ID=\"{0}\">" +
"<SetList>{1}</SetList>" +
"<SetVar Name=\"ID\">New</SetVar>" +
"<SetVar Name=\"Cmd\">Save</SetVar>" +
"<SetVar Name=\"{3}Title\">{2}</SetVar>" +
"<SetVar Name=\"{3}Location\">{4}</SetVar>" +
"<SetVar Name=\"{3}WeekDays\">{5}</SetVar>" +
"</Method>", item.Title, lstCanteenMenu.ID, item.Title, "urn:schemas-microsoft-com:office:office#", item.LocationID, item.WeekDays);
}
sbInsertCanteenMenu.Append("</Batch>");
web.ProcessBatchData(sbInsertCanteenMenu.ToString());
web.AllowUnsafeUpdates = allowUnsafeUpdates;
web.Update();
}
}
}
#endregion
var list = context.Web.Lists.GetByTitle("CustomList");
for (var i = 0; i < 100; i++)
{
ListItemCreationInformation itemCreateInfo = new ListItemCreationInformation();
ListItem oListItem = list.AddItem(itemCreateInfo);
oListItem["Title"] = "My New Item " + i.ToString();
oListItem["Description"] = "Test description";
oListItem.Update();
}
context.ExecuteQuery();
var itemArray = [];
var clientContext = SP.ClientContext.get_current();
var oList = clientContext.get_web().get_lists().getByTitle('CustomList');
for(var i = 0; i< 100; i++){
var itemCreateInfo = new SP.ListItemCreationInformation();
var oListItem = oList.addItem(itemCreateInfo);
oListItem.set_item('Title', 'New Item ' + i);
oListItem.set_item('Description', 'Test desc');
oListItem.update();
itemArray[i] = oListItem;
clientContext.load(itemArray[i]);
}
clientContext.executeQueryAsync(function(){
console.log("success");
}, function(){
console.log("error");
});
foreach (CanteenMenuDetails item in objCanteenMenuDetails)
{
ListItemCreationInformation itemCreateInfo = new ListItemCreationInformation();
ListItem oListItem = list.AddItem(itemCreateInfo);
oListItem["Title"] = item.Title;
oListItem["Location"] = item.LocationID;
oListItem["WeekDays"] = item.WeekDays;
oListItem.Update();
}
context.ExecuteQuery();