Sharepoint 2010使用Windows应用商店应用修改列表项

时间:2015-05-19 10:09:11

标签: c# windows-8 sharepoint-2010 windows-store-apps

我在这个主题上花了好几个星期,所以我在这里问:

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

我找到了许多方法,但没有一种方法可以使用Store App。

有没有人知道一种适用于C#,Sharepoint 2010和Store App的方式?

由于

1 个答案:

答案 0 :(得分:0)

如果您修改链接以使用2010 REST API结构,我认为此示例应该适用于在SharePoint 2010中创建列表项。我没有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
{
} 

如果用_vti_bin / ListData.svc / ListName替换_api / web / lists / GetByTitle('ListName')/ items,我认为这个例子仍然有用。也可能需要进行其他调整。如果有,我在这里只使用商店库的每个常见活动的例子:

https://arcandotnet.wordpress.com/2015/04/01/sharepoint-2013-rest-services-using-c-and-the-httpclient-for-windows-store-apps/