次の方法で共有


ASP.NET と SharePoint: ページ開発

最終更新日: 2011年3月3日

適用対象: SharePoint Foundation 2010

この記事の内容
アプリケーション ページとサイト ページ
マスター ページとコンテンツ ページ
モバイル ページ

このトピックでは、Microsoft ASP.NET 3.5 と Microsoft SharePoint Foundation での Web ページ開発において、最も重要な違いについて説明します。

アプリケーション ページとサイト ページ

Web ページについて、SharePoint Foundation では、ASP.NET にはない区別を行います。まず、SharePoint Foundation では、Web ページをアプリケーション ページとサイト ページという 2 つのカテゴリに分けます。これらの 2 つの種類を開発する過程には、重大な違いがあります。

アプリケーション ページ

アプリケーション ページは、従来の Microsoft ASP.NET 3.5 Web ページによく似ています。しかし、アプリケーション ページは System.Web.UI.Page から、直接、派生していません。その代わりに、アプリケーション ページは LayoutsPageBase あるいは UnsecuredLayoutsPageBase から派生しています。

アプリケーション ページは、Web アプリケーションのすべての Web サイトからアクセス可能な、SharePoint Foundation Web アプリケーションの仮想ディレクトリ内の SharePoint Foundation サーバーのファイル システムに保存されます。つまり、アプリケーション ページは Web アプリケーションの Web サイトで共有されます。

開発者が知っておく必要があるもっとも重要な違いは、アプリケーション ページはセーフ モードで実行されず、またインライン コードを含むことができるという点です。セキュリティがこのように緩和されているのは、アプリケーション ページは、ファーム管理者のみがインストールすることができるからです。

一般的に、サイト ページと比較して、SharePoint Foundation のアプリケーション ページは、多数のサーバー コントロールと比較的少ない情報提供コンテンツから構成されています。

サイト ページ

サイト ページは、コンテンツ指向となる傾向があります。ウェルカム ページ、ホーム ページ、リスト ビュー ページなどが、サイト ページの例です。しかし、サイト ページを高度に機能的にして、対話型の Web コントロールと Web パーツを含めることもできます。

SharePoint Foundation Web サイトでは、エンド ユーザーがサイト ページを作成および追加することができます。このため、サイト ページで実行されるコードには重要な制限があります。具体的には、サイト ページはセーフ モードで実行します。これは、サイト ページにレンダリングされる唯一のコントロールは、セーフ コントロールとして登録されたものだけであるということです。厳密に言えば、サイト ページにはインライン コードを含めることができますが、インライン コードはページがコンパイルされている場合に限り動作します。一部のページは、既定でコンパイルされないように設定することができます。さらに、SharePoint Foundation を使用する非常に優れた利点の 1 つは、サイト ページをカスタマイズできるということです。ページがカスタマイズされると、そのページはコンパイルされなくなり、含まれるインライン コードも動作しなくなります。これらのことから、サイト ページにはインライン コードを含めないことを推奨します ("インライン コード" とは、サーバーで実行される、埋め込みコードを指します。クライアントで実行される ECMAScript (JavaScript、JScript) は、あらゆる種類のページで使用することができます)。サイト ページには、2 つの種類があります。

  • 標準ページ: Web コントロールとインライン Web パーツを含めることができる Wiki 対応のページです。標準ページは、System.Web.UI.Page から直接ではなく、WikiEditPage クラスから派生します。

  • Web パーツ ページ: 名前が示唆するように、これらは Web パーツ領域を持つ Web パーツ ページです。SharePoint FoundationWeb パーツ ページは、System.Web.UI.Page から直接ではなく、WebPartPage から派生します。

SharePoint Foundation でのカスタム ページ開発についての詳細は、「[文書パーツ] ページとユーザー インターフェイス」と、この SDK の「サイトおよびページ」ノードを参照してください。

マスター ページとコンテンツ ページ

SharePoint Foundation では、ASP.NET のマスター ページ テクノロジを多用しています。アプリケーション ページとサイト ページの両方が、マスター ページを参照するコンテンツ ページ (英語)です。SharePoint Foundation でのマスター ページの使用の詳細については、この SDK の「マスター ページ」ノードを参照してください。

モバイル ページ

SharePoint Foundation モバイル ページは、非モバイル ページよりはるかに単純です。ASP.NET マスター ページ/コンテンツ ページ テクノロジは使用されません。また、アプリケーション ページとサイト ページに分かれていません。SharePoint Foundation モバイル ページは、すべてアプリケーション ページで、\_layouts\Mobile フォルダーにあります。SharePoint Foundation モバイル ページがサイト ページに似ている点が 1 つあります。ページがモバイル Web パーツ アダプターを含む場合、そのアダプターはセーフ コントロールとして登録する必要があり、そうでない場合はレンダリングされません。モバイル ページの開発の詳細については、この SDK の「モバイル ページとリダイレクト システムの概要」ノードを参照してください。

関連項目

参照

SafeControl 要素 (ソリューション)

概念

[文書パーツ] ページとユーザー インターフェイス

マスター ページ

モバイル ページとリダイレクト システムの概要

その他の技術情報

サイトおよびページ