我有一个提供商托管应用。我正试图访问我的主机网站列表中的列表项目。
我可以获得所有列表的列表。但是当我试图进入列表项时,它总是空的。
var spContext = SharePointContextProvider.Current.GetSharePointContext(Context);
using (var clientContext = spContext.CreateUserClientContextForSPHost())
{
clientContext.Load(clientContext.Web, web => web.Title);
clientContext.ExecuteQuery();
ListCollection lists = clientContext.Web.Lists;
List list = lists.GetByTitle("TestList");
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml = "<View><RowLimit>100</RowLimit></View>";
Microsoft.SharePoint.Client.ListItemCollection items = list.GetItems(camlQuery);
clientContext.Load<ListCollection>(lists);
clientContext.Load<List>(list);
clientContext.Load<Microsoft.SharePoint.Client.ListItemCollection>(items);
clientContext.ExecuteQuery();
foreach (Microsoft.SharePoint.Client.ListItem item in items)
{
Response.Write("<br />" + item.FieldValues["Title"]);
}
}
在AppManifest.xml中,我为列表添加了“完全控制”权限
答案 0 :(得分:1)
在AppManifest.xml中为列表和 Web
添加 READ权限答案 1 :(得分:0)
显然我做的一切都是正确的。在安装时,我仍然必须说出哪些列表可以完全控制。
答案 2 :(得分:0)
你的代码非常好......
只需要在&#34; AppManifest.xml&#34;中进行更改。文件权限将网站集作为完全控制权,因为您正在使用主机网站。