将项目添加到 SharePoint Online 列表 c#
Add item to SharePoint Online list c#
我有一个网站 api,它的正文中有一些数据,我想使用 c# 将这些数据添加到 SharePoint 在线列表中。但是下面的代码给我未授权的错误。
using (var context = new ClientContext(siteUrl))
{
context.ExecutingWebRequest += Context_ExecutingWebRequest; // for oAuth it working in get list dat
Web web = context.Web;
List topicsList = context.Web.Lists.GetByTitle("ListName");
ListItemCreationInformation newTopicInfo = new ListItemCreationInformation();
ListItem oListItem = topicsList.AddItem(newTopicInfo);
oListItem["Title"] = "Test";
oListItem["Column1"] = "Test1";
oListItem.Update();
context.ExecuteQuery();
}
对于 SharePoint Online,使用 SharePointOnlinCredentials class 将凭据传递给身份验证:
string password = "*******";
string account = "username@tenant.onmicrosoft.com";
var secret = new SecureString();
foreach (char c in password)
{
secret.AppendChar(c);
}
using (ClientContext ctx = new ClientContext("https://tenant.sharepoint.com/sites/dev/"))
{
ctx.Credentials = new SharePointOnlineCredentials(account, secret);
ctx.Load(ctx.Web);
ctx.ExecuteQuery();
List topicsList = ctx.Web.Lists.GetByTitle("ListName");
ListItemCreationInformation oListItemCreationInformation = new ListItemCreationInformation();
ListItem oListItem = topicsList.AddItem(oListItemCreationInformation);
oListItem ["Title"] = "New List Item";
oListItem["Column1"] = "Test1";
oListItem .Update();
ctx.ExecuteQuery();
};
以上代码现在运行良好,我缺少对我的应用程序的权限。要使用 oAuth,我们必须在 SharePoint 中注册一个加载项,并且对于共享点中的 post 数据,我必须为我的加载项提供 FullControl,但在创建时我已将其设置为只读。
以下是参考。
Referance
我有一个网站 api,它的正文中有一些数据,我想使用 c# 将这些数据添加到 SharePoint 在线列表中。但是下面的代码给我未授权的错误。
using (var context = new ClientContext(siteUrl))
{
context.ExecutingWebRequest += Context_ExecutingWebRequest; // for oAuth it working in get list dat
Web web = context.Web;
List topicsList = context.Web.Lists.GetByTitle("ListName");
ListItemCreationInformation newTopicInfo = new ListItemCreationInformation();
ListItem oListItem = topicsList.AddItem(newTopicInfo);
oListItem["Title"] = "Test";
oListItem["Column1"] = "Test1";
oListItem.Update();
context.ExecuteQuery();
}
对于 SharePoint Online,使用 SharePointOnlinCredentials class 将凭据传递给身份验证:
string password = "*******";
string account = "username@tenant.onmicrosoft.com";
var secret = new SecureString();
foreach (char c in password)
{
secret.AppendChar(c);
}
using (ClientContext ctx = new ClientContext("https://tenant.sharepoint.com/sites/dev/"))
{
ctx.Credentials = new SharePointOnlineCredentials(account, secret);
ctx.Load(ctx.Web);
ctx.ExecuteQuery();
List topicsList = ctx.Web.Lists.GetByTitle("ListName");
ListItemCreationInformation oListItemCreationInformation = new ListItemCreationInformation();
ListItem oListItem = topicsList.AddItem(oListItemCreationInformation);
oListItem ["Title"] = "New List Item";
oListItem["Column1"] = "Test1";
oListItem .Update();
ctx.ExecuteQuery();
};
以上代码现在运行良好,我缺少对我的应用程序的权限。要使用 oAuth,我们必须在 SharePoint 中注册一个加载项,并且对于共享点中的 post 数据,我必须为我的加载项提供 FullControl,但在创建时我已将其设置为只读。 以下是参考。 Referance