構成要素: Web サイトとサイト コレクション
最終更新日: 2011年4月22日
適用対象: SharePoint Foundation 2010
この記事の内容
Web サイトおよびサイト コレクションのオブジェクト モデル
Web サイトとサイト コレクションで使用される XML
Web サイトとサイト コレクションの開発に関連する領域
Web サイトとサイト コレクションの開発の詳細
ここでは、Microsoft SharePoint Foundation での開発の構成要素として Web サイトとサイト コレクションの概要を簡単に説明します。
SharePoint Foundation Web アプリケーションには、1 つ以上のサイト コレクションが含まれます。サイト コレクションは、1 つのトップレベル Web サイトと 0 個以上の子 Web サイトで構成されます。子 Web サイトはそれ自身が子 Web サイトを持つことができます。
Web サイトは、1 つ以上のページのコレクションであり、通常はリストのセット、ドキュメント ライブラリ、コンテンツ タイプ、フィールド (列) の型、利用できる機能のセット、ユーザー通知のセット、および (多くの場合は) ワークフロー インスタンスのセットを含みます。また、Web サイトには、1 人の所有者、関連付けられたユーザーのセット、およびユーザー グループが付随します。これらすべての種類のエンティティは、プログラムによって Web サイトに対する追加 (および削除) ができます。Web サイトは、検索のスコープにすることもできます。
Web サイトは、サイト定義の構成と Web テンプレートという 2 つの基本的なエンティティのどちらかから作成できます。これらは種類の異なる XML マークアップです。
サイト コレクションは、1 つ以上の Web サイトから成る階層の管理コンテナーです。事実上、Web サイトに関連付けられたすべての種類のエンティティは、サイト コレクションのレベルで展開することもでき、その場合はそのサイト コレクションのすべての Web サイトで使用できます。また、サイト コレクションには、通常、その Web サイトで共有される、ほかの種類のエンティティも含まれます。サイト コレクションに展開されている Web パーツ、リスト テンプレート、テーマ、ワークフロー、およびソリューションの各セットがこれに該当します。
サイト コレクションは、SharePoint Foundation での検索でとりうる最大のスコープです。ただし、Microsoft SharePoint Server ではさらに広い検索スコープをとることができます。サイト コレクションは、使いやすいバックアップと復元の API が存在する最小の単位です (ただし、接続されていないデータベースとデータベース スナップショットの機能によって、リストなど、より詳細な単位のバックアップと復元が行えます)。詳細については、「接続されていないデータベースからの詳細なデータ復元」および「データベース スナップショットのプログラムによる管理」を参照してください。
それぞれのサイト コレクションには、サイト コレクション管理者がいます。
Web サイトおよびサイト コレクションのオブジェクト モデル
サイト コレクションと Web サイトは、プログラムによって作成できます。そのそれぞれは、設定と子オブジェクトの管理に使用できる何十というメンバーを持つクラスによって表されます。
SPWeb クラス
Web サイトは、SPWeb クラスのオブジェクトによって表されます。このクラスのメンバーを使用すると、以下の要素を管理できます。
Web サイトの外観
Web サイトのユーザーとその権限および通知
Web サイトの作成に使用される Web テンプレートと Web の構成
リスト テンプレートおよび Web パーツのギャラリー
さまざまな追加の構成設定
そのプロパティの多くは、Web サイトのサブサイト、リスト、リスト テンプレート、コンテンツ タイプなど、Web サイト内のさまざまな種類の子オブジェクトのコレクションです。多くの重要なクラスと同様に、SharePoint Foundation データベースに対する変更をコミットする重要なUpdate() メソッドもあります。
SPWeb オブジェクトへの参照を取得するには、さまざまな方法があります。詳細については、「サイト、Web アプリケーション、およびその他の主要オブジェクトへの参照を取得する」を参照してください。
SPSite クラス
サイト コレクションは、SPSite クラスのオブジェクトによって表されます。また、機能、サブサイト、ソリューション、イベント レシーバーなど、子オブジェクトの管理に使用できるメンバーを持ちます。
SPSite オブジェクトへの参照を取得するには、複数の方法があります。詳細については、「サイト、Web アプリケーション、およびその他の主要オブジェクトへの参照を取得する」を参照してください。
注意
SPSite クラスは、サイト コレクションを表しますが、それ自体は ICollection や ICollection<T> を継承していません。
重要 |
---|
SPWeb クラスと SPSite クラスのどちらについても、Dispose メソッドを呼び出すタイミングと "呼び出してはならない" タイミングを知っておくことが重要です。詳細については、「ベスト プラクティス: Windows SharePoint Services の破棄可能なオブジェクトを使用する」を参照してください。 |
Web サイトとサイト コレクションで使用される XML
Collaborative Application Markup Language (CAML) サイト スキーマ マークアップは、サイト定義を定義するのに使用されます。このマークアップは、次の 2 種類のファイルに含まれます。
%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LCID\XML\ 内のWebTemp*.xml ファイル。ここで、LCID は言語/文化の数値 ID (英語の場合は 1033) です。このファイル内のマークアップの大部分は、サイト定義の構成の明細と、SharePoint Foundation UI で新しいサイトを作成するユーザーによる選択が可能な構成を行うのに使用できる情報です。詳細については、「WebTemp*.xml ファイルについて」を参照してください。
%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\SiteTemplates\SiteType\XML\ の ONET.xml ファイル。ここで、SiteType は、"STS"、"BLOG" など、サイト定義 (サイト定義の構成のファミリ) の名前です。このマークアップは、サイトの種類に関するメタデータを提供します。また、サイトの種類の一部であるリスト、モジュール、および機能を明細化して定義します。詳細については、「Onet.xml ファイルについて」を参照してください。
注意
新しいサイトは、"Web テンプレート" (サイト定義の構成と区別するためにこう呼ばれます) という別の種類の基本的構造から作成することもできます。Web テンプレートもまた、XML ファイルです。具体的には、1 つのソリューション (.wsp) ファイル内に記された XML ファイルのセットです。Web テンプレートは、UI で作成することも、SPWeb クラスの SaveAsTemplate(String, String, String, Boolean) メソッドによってプログラムで作成することもできます。作成された .wsp ファイルは、コンテンツ データベースに保存されますが、サイト コレクションのトップレベル サイトのソリューション ギャラリーからダウンロードして、別のサイト コレクションのギャラリーにアップロードすることができます。Web テンプレートの詳細については、「Web テンプレート」を参照してください。
Web サイトとサイト コレクションの開発に関連する領域
サーバーとサイトのアーキテクチャ : オブジェクト モデルの概要