方法: アプリケーション構成ファイルを使用してキャッシュ クライアントを構成する (Windows Azure Shared Caching)
このトピックでは、プロビジョニングされた Windows Azure キャッシュを使用するようにキャッシュ クライアントを構成する方法を説明します。キャッシュ クライアントは、プログラムによってキャッシュにアクセスするすべてのアプリケーションです。この構成はプログラムによって行うことも、アプリケーション構成ファイルによって行うこともできます。このトピックでは、アプリケーション構成ファイルの使用について説明します。同じ構成をプログラムによって行う方法については、「方法: プログラムによってキャッシュ クライアントを構成する (Windows Azure 共有キャッシュ)」を参照してください。
注 |
|---|
| クラウド ベースの Windows Azure のキャッシュ クライアントのプログラミング モデルの多くは、内部設置型 Microsoft AppFabric 1.1 for Windows Server と共有されます。詳細については、「Windows Azure キャッシュでのキャッシュ API のサポート」を参照してください。 |
アプリケーション構成ファイルを使用してキャッシュ クライアントを構成するには
-
最初に、Windows Azure Cachingを使用するように Visual Studio 2012 プロジェクトを準備します。詳細については、「方法: Windows Azure で Caching を使用するために Visual Studio を準備する」を参照してください。
-
管理ポータルで、対象のキャッシュの設定を表示します。詳細については、「キャッシュを管理する (Windows Azure Shared Caching)」を参照してください。
-
[プロパティ] ウィンドウで、キャッシュの [サービス URL] の値をメモします。これは Windows Azure キャッシュのホスト名です。キャッシュ エンドポイント URI と呼ばれることもあります。
-
[プロパティ] ウィンドウで、キャッシュの [認証トークン] の値もメモします。これは、キャッシュへのアクセスをセキュリティで保護する ACS キーです。
-
ツール バーの [クライアント構成の表示] ボタンをクリックします。
-
表示される [クライアント構成] ウィンドウで、XML スニペットをメモします。これらのスニペットを、プロジェクトのアプリケーション構成ファイル (app.config) または Web 構成ファイル (web.config) の configuration セクションに追加します。
警告configSections 要素を configuration セクション内の最初の要素にする必要があります。既存の configSections 要素がある場合は、コピーした section をその中に追加します。
注sessionState および outputcache 要素は ASP.NET アプリケーションのみに使用されます。これらの要素を ASP.NET 以外のキャッシュ クライアントのアプリケーション構成ファイルにコピーしないでください。 -
アプリケーションで新しい DataCacheFactoryConfiguration オブジェクトを作成します。
-
空のコンストラクターを使用して "既定" の構成設定を読み込みます。これは、名前のない dataCacheClient セクションが 1 つだけある場合にも適用されます。
-
コンストラクター内の文字列を使用して、名前付きの構成セクションを読み込みます。たとえば、ポータルでは "SslEndpoint" という名前の dataCacheClient セクションが自動的に提供されます。
-
空のコンストラクターを使用して "既定" の構成設定を読み込みます。これは、名前のない dataCacheClient セクションが 1 つだけある場合にも適用されます。
-
DataCacheFactory オブジェクトを作成し、コンストラクターを使用して以前に作成した DataCacheFactoryConfiguration オブジェクトを渡します。
-
DataCacheFactory オブジェクトを使用して GetDefaultCache を呼び出します。これによって、プログラムによってキャッシュにアクセスするために使用できる DataCache オブジェクトが返されます。
次に、Windows Azure を使用するように構成された app.config ファイルの例を示します。構成ファイルの実際の値は異なります。
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="dataCacheClients" type="Microsoft.ApplicationServer.Caching.DataCacheClientsSection, Microsoft.ApplicationServer.Caching.Core"
allowLocation="true" allowDefinition="Everywhere"/>
</configSections>
<!-- Cache exposes two endpoints: one simple and other SSL endpoint. Choose the appropriate endpoint depending on your security needs. -->
<dataCacheClients>
<dataCacheClient name="default">
<hosts>
<host name="yourcachename.cache.windows.net" cachePort="22233" />
</hosts>
<securityProperties mode="Message">
<messageSecurity authorizationInfo="iz8zOmJ0dJBzzzzxa8JxdGJkb281bzxudGF0az9udGxzdGluZi111z8oZS5Ji28lP38jb250Pm9sLmludDMud2luZG93Pi1pb8Qubmx0L1dSQxB2MP45LiZxd25lPii0eDJJZQA5SlZQQUQ2xzIizk8iazlES1P08X8zOFIxZjdzZxp0i3lFQ2FFPSZodJRzOi8xS8JxdGJEb281bzxudGF0az9uxGxzdGluZi5jiz8oZS5pb8QzL8dpbmRxd3MQaz50Lm5ldA==">
</messageSecurity>
</securityProperties>
</dataCacheClient>
<dataCacheClient name="SslEndpoint">
<hosts>
<host name="yourcachename.cache.windows.net" cachePort="22243" />
</hosts>
<securityProperties mode="Message" sslEnabled="true">
<messageSecurity authorizationInfo="iz8zOmJ0dJBzzzzxa8JxdGJkb281bzxudGF0az9udGxzdGluZi111z8oZS5Ji28lP38jb250Pm9sLmludDMud2luZG93Pi1pb8Qubmx0L1dSQxB2MP45LiZxd25lPii0eDJJZQA5SlZQQUQ2xzIizk8iazlES1P08X8zOFIxZjdzZxp0i3lFQ2FFPSZodJRzOi8xS8JxdGJEb281bzxudGF0az9uxGxzdGluZi5jiz8oZS5pb8QzL8dpbmRxd3MQaz50Lm5ldA==">
</messageSecurity>
</securityProperties>
</dataCacheClient>
</dataCacheClients>
</configuration>
次に、アプリケーション構成ファイルを使用して DataCache を取得するコードを示します。
' Cache client configured by settings in application configuration file. Dim config As New DataCacheFactoryConfiguration("default") Dim cacheFactory As New DataCacheFactory(config) Dim defaultCache As DataCache = cacheFactory.GetDefaultCache() ' Put and retrieve a test object from the default cache. defaultCache.Put("testkey", "testobject") Dim strObject As String = defaultCache.Get("testkey")
参照
ビルド日: