4

SharePoint クライアント オブジェクト モデル、特にリモート接続を使用してすべての SharePoint サイト URL のリストを取得する方法を学習しようとしています。これは Web サービスを使用して可能ですが、クライアント オブジェクト モデルを使用して実行したいと考えています。

次のコードを使用して、特定の共有ポイント サイトのタイトル リストを取得する方法を考えました。

client object module):
  ClientContext  ctx = new ClientContext( server );
  ctx.AuthenticationMode = ClientAuthenticationMode.Default;
  ctx.Credentials = WindowsAuthenticationCredentials(username, password);

 Web w = ctx.Web;
var lists = ctx.LoadQuery(w.Lists);
 ctx.ExecuteQuery();

//Enumerate the results.
foreach (List theList in lists)
{

}

出力:

お知らせ、マスター コレクション ページなど…</p>

サイトの URL リストを取得するにはどうすればよいですか?

Web サービスでは、それを実現するために次のように呼び出すことができますが、クライアント オブジェクト モジュールを使用して同じことを行う方法を理解しようとしているだけです。C#コードを提供していただければ幸いです。

WSPSitedata.SiteData sitedata = new SiteData();
sitedata.Url = @SharePointBaseURL + @"_vti_bin/sitedata.asmx";
sitedata.Credentials = our_credentials
_sSiteMetadata metaData = new _sSiteMetadata();
_sWebWithTime[] webWithTime 
 sitedata.GetSite(out metaData, out webWithTime, out users, out groups, out vgroups);
4

1 に答える 1

1

SharePoint クライアント オブジェクト モデル CSOM は、SiteCollection とリモートで対話するように設計されています。確かに、さまざまな SiteCollection に接続することはできますが、SPWebApplications 内にあるすべての SiteCollection を調べることはできません。

2010 年には、以前のバージョンの SharePoint で利用可能な ASMX WebServices を引き続き使用できました。

CSOM をよりよく理解するには、MSDN サイトhttp://msdn.microsoft.com/en-us/library/ee537247.aspxを参照してください。

すべての SiteCollection URL を含むリストを意味していたのでしょうか、それとも誤解でしたか?

トルステン

于 2012-01-11T17:38:22.020 に答える