仅一个文件夹的 Sharepoint 客户端对象模型更新 属性
Sharepoint Client Object Model Updating Property of a only one folder
我正在处理共享点客户端对象模型代码。
"User Details Folder"里面有一个叫"John Details"的文件夹。
我正在尝试更新 "John Details" 文件夹的 2 个属性。
我该怎么做?
Public Void UpdateColumnsForOnlyOneFolder(maildId1,mailId2){
ClientContext ctx = new ClientContext("http://mytestsite/");
List list = ctx.Web.Lists.GetByTitle("User Details");
Microsoft.SharePoint.Client.ListItemCollection items = list.GetItems(CamlQuery.CreateAllItemsQuery());
ctx.Load(items);
ctx.ExecuteQuery();
foreach (var item in items)
{
item["email1"] = mailId1;
item["email2"] = mailId2;
item.Update();
}
ctx.ExecuteQuery();
}
这是只更新一个文件夹的项目的代码
Public Void UpdateColumnsForOnlyOneFolder(maildId1,mailId2){
ClientContext ctx = new ClientContext("http://mytestsite/");
List list = ctx.Web.Lists.GetByTitle("User Details");
CamlQuery spQuery = CamlQuery.CreateAllItemsQuery();
spQuery.FolderServerRelativeUrl = "Enter Relative URL TO FOLDER" // Example "/managedpath/site/Lists/listname/Folder Name"
Microsoft.SharePoint.Client.ListItemCollection items = list.GetItems(spQuery);
ctx.Load(items);
ctx.ExecuteQuery();
foreach (Microsoft.SharePoint.Client.ListItem item in items)
{
item["email1"] = mailId1;
item["email2"] = mailId2;
item.Update();
}
ctx.ExecuteQuery();
}
如果适合您,请标记为答案。
如果我正确理解了你的问题,你想更新文件夹的关联列表项属性。如果是这样,您可以考虑以下方法:
- 得到Folder by url using Web.GetFolderByServerRelativeUrl method
- 获得关联List Item using Folder.ListItemAllFields property
- 更新 List Item 属性
例子
using (var ctx = new ClientContext(webUri))
{
var web = ctx.Web;
var folder = web.GetFolderByServerRelativeUrl("/site/Documents/folder/sub folder");
var listItem = folder.ListItemAllFields;
listItem["PropertyName"] = "PropertyValue";
listItem.Update();
ctx.ExecuteQuery();
}
我正在处理共享点客户端对象模型代码。 "User Details Folder"里面有一个叫"John Details"的文件夹。 我正在尝试更新 "John Details" 文件夹的 2 个属性。 我该怎么做?
Public Void UpdateColumnsForOnlyOneFolder(maildId1,mailId2){
ClientContext ctx = new ClientContext("http://mytestsite/");
List list = ctx.Web.Lists.GetByTitle("User Details");
Microsoft.SharePoint.Client.ListItemCollection items = list.GetItems(CamlQuery.CreateAllItemsQuery());
ctx.Load(items);
ctx.ExecuteQuery();
foreach (var item in items)
{
item["email1"] = mailId1;
item["email2"] = mailId2;
item.Update();
}
ctx.ExecuteQuery();
}
这是只更新一个文件夹的项目的代码
Public Void UpdateColumnsForOnlyOneFolder(maildId1,mailId2){
ClientContext ctx = new ClientContext("http://mytestsite/");
List list = ctx.Web.Lists.GetByTitle("User Details");
CamlQuery spQuery = CamlQuery.CreateAllItemsQuery();
spQuery.FolderServerRelativeUrl = "Enter Relative URL TO FOLDER" // Example "/managedpath/site/Lists/listname/Folder Name"
Microsoft.SharePoint.Client.ListItemCollection items = list.GetItems(spQuery);
ctx.Load(items);
ctx.ExecuteQuery();
foreach (Microsoft.SharePoint.Client.ListItem item in items)
{
item["email1"] = mailId1;
item["email2"] = mailId2;
item.Update();
}
ctx.ExecuteQuery();
}
如果适合您,请标记为答案。
如果我正确理解了你的问题,你想更新文件夹的关联列表项属性。如果是这样,您可以考虑以下方法:
- 得到Folder by url using Web.GetFolderByServerRelativeUrl method
- 获得关联List Item using Folder.ListItemAllFields property
- 更新 List Item 属性
例子
using (var ctx = new ClientContext(webUri))
{
var web = ctx.Web;
var folder = web.GetFolderByServerRelativeUrl("/site/Documents/folder/sub folder");
var listItem = folder.ListItemAllFields;
listItem["PropertyName"] = "PropertyValue";
listItem.Update();
ctx.ExecuteQuery();
}