我正在尝试使用C#HttpClient将数据发布到SharePoint Online上的列表中。这是我的代码:
using (var client = new SPHttpClient(webUri, userName, password))
{
var listTitle = "HttpClientList";
var itemPayload = new
{
__metadata = new
{
type = "SP.Data.HttpClientListListItem"
},
Title = "test3",<--column name "Title"
_x0071_cr5 = "value3"<--column name "Value"
};
var endpointUrl = string.Format("{0}/_api/web/lists/getbytitle('{1}')/items", webUri, listTitle);
var data = client.ExecuteJson(endpointUrl, HttpMethod.Post, itemPayload);
Console.WriteLine("Task item '{0}' has been created", data["d"]["Title"]);
Console.ReadLine();
截至目前,我正在获得状态&#34; 400,BadRequest&#34;。我的猜测是我错过了一些东西或者提供了错误的数据。 我一直关注这篇博文Blogpost 我只能执行动词GET。所有其他动词都给了我&#34; 400,BadRequest&#34;
答案 0 :(得分:0)
用varoius解决方案解决了这个问题。
添加了正确的ListItem HttpClientListListItem
。
通过ListSettings面板创建所有列。
将client.ExecuteJson()
替换为client.ExecuteJson(endpointUrl, HttpMethod.Post, headers, default(string));
。
谢谢你的帮助!