2012-01-13 10 views
2

名前付きデータキャッシュをappfabricにプログラムで追加します。 私はこのために以下のコードを保持: -Appfabricでプログラムで名前付きデータキャッシュを追加する

try 
    { 
     //This can also be kept in a config file 
     var config = new DataCacheFactoryConfiguration(); 
     config.SecurityProperties = new DataCacheSecurity(); 

     config.Servers = new List<DataCacheServerEndpoint> { new DataCacheServerEndpoint(Environment.MachineName, 22233) }; 

     DataCacheFactory dcf = new DataCacheFactory(config); 

     if (dcf != null) 
     { 
      var state = InitialSessionState.CreateDefault(); 
      state.ImportPSModule(new string[] { "DistributedCacheAdministration", "DistributedCacheConfiguration" }); 
      state.ThrowOnRunspaceOpenError = true; 
      var rs = RunspaceFactory.CreateRunspace(state); 
      rs.Open(); 
      var pipe = rs.CreatePipeline(); 
      pipe.Commands.Add(new Command("Use-CacheCluster")); 

      var cmd = new Command("New-Cache"); 
      cmd.Parameters.Add(new CommandParameter("Name", "Vaibhav")); 

      cmd.Parameters.Add(new CommandParameter("Expirable", false)); 
      pipe.Commands.Add(cmd); 

      var output = pipe.Invoke(); 
     } 
    } 
    catch (Exception e) 
    { 
     //throw new Exception 
    } 

しかし、私はデータキャッシュにアクセスしようとすると、これは期待通りに動作していない(使用:dcf.GetCache("Vaibhav");を)それはキャッシュが見つからないというエラーを与えています。 PowerShellを使用してキャッシュを作成したところ、キャッシュにアクセスできましたが、コマンドプロンプト(powershell)ではなくプログラマチックに実装します。

これを実装する適切な方法を提案してください。アドバンス バイバブ

おかげ

+0

このコードが動作していることを確認してください。このコードをコンソールアプリケーション内で実行すると、エラーコード ":SubStatus :エラー:レジストリからインストールパスを読み込めませんでした"というメッセージが表示されたCmdletInvocationExceptionが表示されます。 " – PhilPursglove

+0

エラーは発生しませんでしたが、 – Everest

答えて

3

あなたが実際にプログラム的にキャッシュを作成できるようにするには管理者としてのVisual Studioを起動する必要があります。

+0

丁寧な回答+1。 –

関連する問題