SharePoint 2013 アプリケーション ページで Web.config を使用する
はじめに
SharePoint 2013 のアプリケーション ページは 空の SharePoint プロジェクト というテンプレートから作成します。初期状態ではまったくファイルが存在しない状態ですが、Web.config
を配置できます。ただし、ちょっとした工夫が必要になります。
サンプル コード
実行手順
Web.config
空の SharePoint プロジェクトを作成し、アプリケーション ページ (ApplicationPage1.aspx
) を作成します。ソリューション エクスプローラーで ApplicationPage1.aspx
が保存されたフォルダーを右クリックします。コンテキスト メニューから 追加 - 新しい項目 をクリックします。新しい項目の追加 のテンプレートの一覧には、通常の ASP.NET アプリケーションでは存在する Web 構成ファイル がありません。そこで代わりに アプリケーション構成ファイル を選択し Web.config
と名前を変更します。
作成された Web.config
を編集します。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="Message" value="Hello SharePoint" />
</appSettings>
</configuration>
ApplicationPage1.aspx
参照設定に System.Configuration.dll
を追加して、ApplicationPage1.aspx
を編集します。
<%@ Import namespace="System.Configuration" %>
<asp:Content id="Main" contentplaceholderid="PlaceHolderMain" runat="server">
<h1><%# ConfigurationManager.AppSettings["Message"] %></h1>
</asp:Content>
実行結果
デバッグを開始すると以下のように表示されます。
おわりに
アプリケーション ページの Web.config
は、ASP.NET Web アプリケーションのサブ フォルダーにある Web.config
として配置されます。そのため、すべての機能 (HTTP モジュールの登録など) が使えるわけではありません。ルートの Web.config
は既定で C:\inetpub\wwwroot\wss\VirtualDirectories\{{port-number}}
にあります。ルートの Web.config
も編集できますが、アプリケーション全体に影響を与えてしまうので注意が必要です。
Discussion