1

Office 365 の SkyDrive Pro のマイ ドキュメント フォルダーに個人用ファイルがあります。

私が理解しているように、SkyDrive Pro は SharePoint をバッキング ストレージとして使用します。これらのファイルに SharePoint API (Microsoft.SharePoint.Client.ClientContex) でアクセスできますか?

Office 365 の SkyDrive Pro を意味します。たとえば、companyname.sharepoint.com にアクセスすると、右隅に Outlook、Calendar、People、Newsfeed、SkyDriveというメニューが表示されます。そして、消費者向けの SkyDrive とは異なります。 ここに画像の説明を入力

4

2 に答える 2

1

はい、通常どおり ClientContext を介してファイルとフォルダーの情報にアクセスできます。唯一の違いは、ClientContext を構築するときに、別の URL を使用する必要があることです。これは、[SkyDrive] タブに移動したときに表示されるもの ( https://companyname-my.sharepoint.com/personal/username_companyname_onmicrosoft_com/など) です。

この URL をプログラムで取得する場合は、次のスニペットを使用できます。

 var clientContext = new ClientContext("https://**companyname**-my.sharepoint.com/");
 clientContext.Credentials = new SharePointOnlineCredentials(**userName**, **password**);

 var props = peopleManager.GetMyProperties();

 clientContext.Load(props);            
 clientContext.ExecuteQuery();

 Console.WriteLine(props.PersonalUrl);
于 2013-12-17T13:55:58.417 に答える
0

http://msdn.microsoft.com/en-us/library/office/dn423226.aspx

    public static void GetSkyDriveFiles(string path, int rowLimit, string sortExpression)
    {
          string queryText = "Path:\""+path+"Documents/*\" IsDocument:1";    
          //string uriTempale = "{0}_api/search/query?querytext='{1}'&rowlimit={2}&sortlist='{3}'";
           var clientContext = new ClientContext(@path)
           {
                  Credentials = "ur credentials";
           }


           cxq.KeywordQuery keywordQuery = new cxq.KeywordQuery(clientContext);
           keywordQuery.QueryText = queryText;
           keywordQuery.RowLimit = rowLimit;
           cxq_ConvertSortExpressionToList(keywordQuery.SortList, sortExpression);
           //keywordQuery.SortList.Add("Write", cxq.SortDirection.Ascending);

           cxq.SearchExecutor searchExecutor = new cxq.SearchExecutor(clientContext);
           ClientResult<cxq.ResultTableCollection> results = searchExecutor.ExecuteQuery(keywordQuery);
           clientContext.ExecuteQuery();
    }
于 2013-11-22T05:44:41.633 に答える