2

プロバイダーがホストするアプリを作成してきましたが、CSOM C# を使用してドキュメントのタイトルを取得することに固執しています。私のコードは次のとおりです。

var spContext = SharePointContextProvider.Current.GetSharePointContext(Context);

using (var clientContext = spContext.CreateUserClientContextForSPHost())
{
    Web web = clientContext.Web;
    ClientOM.List list = clientContext.Web.Lists.GetByTitle("Documents");

    clientContext.Load(list);
    clientContext.ExecuteQuery();

    Response.Write(list.Title);

    Folder folder = list.RootFolder;
    clientContext.Load(folder);
    clientContext.ExecuteQuery();
    string count = folder.ItemCount.ToString();
    Response.Write("Folder variable count: "+count);

    ClientOM.FileCollection fcollection = folder.Files;
    clientContext.Load(folder.Files);
    clientContext.ExecuteQuery();
    Response.Write("\n Files count: " + folder.Files.Count);
    foreach (ClientOM.File f in folder.Files)
    {
        Response.Write(f.Title);


    }
}

Output : フォルダ変数数: 6 ファイル数: 0

4

1 に答える 1

2

すべての返信に感謝します。コードが正しいことがわかったので、アプリの管理面を探し始めました。私の同僚の 1 人は、プロバイダーがホストするアプリには特定のアクセス許可を設定する必要があると指摘しました。

Appmanifest.xml ファイルに移動し、このコードを追加しました。

<AppPermissionRequests>
    <AppPermissionRequest Scope="http://sharepoint/content/sitecollection/web" Right="FullControl" />
  </AppPermissionRequests>
于 2014-10-15T10:28:39.790 に答える