Sharepoint 2010使用Windows Store应用程序修改列表项

本文关键字:程序修改 列表 应用 Store 2010 使用 Windows Sharepoint | 更新日期: 2023-09-27 17:49:45

我为这个话题纠结了几个星期,所以我在这里问:

我正在为Windows Surface编写一个Windows Store应用程序。该应用程序应该读取Microsoft ShrePoint 2010列表的条目,修改它们或向空字段添加新值,然后将修改后的列表上传到SharePoint。读取值没有问题,它工作得很好。问题是列表条目的上传。

我找到了很多方法来做到这一点,但它们都不适用于商店应用程序。

有谁知道c#, Sharepoint 2010和商店应用程序的工作方式吗?

谢谢

Sharepoint 2010使用Windows Store应用程序修改列表项

我认为这个例子应该适用于在SharePoint 2010中创建列表项,如果你修改链接以使用2010 REST API结构的话。我没有2010年的环境来运行测试,但这是我发现的与SharePoint一起工作的商店应用程序的唯一方法。

这将创建一个项目:

string url = "https://YourSite.com/Subsite/";
HttpClient client = new HttpClient(new HttpClientHandler() { UseDefaultCredentials = true });
client.BaseAddress = new System.Uri(url);
client.DefaultRequestHeaders.Clear();
client.DefaultRequestHeaders.Add("X-RequestDigest", digest);
client.DefaultRequestHeaders.Add("X-HTTP-Method", "POST");
HttpContent content = new StringContent("{ '__metadata': { 'type': 'SP.Data.ReportListItem' }, 'Title': 'NewTitle', 'PhotosId': { 'results': [2] }, 'Details': 'Another successful day!' }");
content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
content.Headers.ContentType.Parameters.Add(new NameValueHeaderValue("odata", "verbose"));
HttpResponseMessage response = await client.PostAsync("_api/web/lists/GetByTitle('Report')/items", content);
response.EnsureSuccessStatusCode();
if (response.IsSuccessStatusCode)
{
}
else
{
} 

如果将_api/web/lists/GetByTitle('ListName')/items替换为_vti_bin/ListData。我认为这个例子应该仍然工作。其他的调整也可能是必要的。如果是这样,我有每个常见活动的例子,只使用存储库在这里:

https://arcandotnet.wordpress.com/2015/04/01/sharepoint - 2013 -休息-服务-使用- c -和- windows -存储-的- httpclient apps/