4

私は現在、アフリカ市場向けのASP.NET MVC 4アプリを開発しており、次のリンクhttp://msdn.microsoft.com/en-gb/library/system.globalizationで詳しく説明されている手順を使用してカスタムカルチャを登録したいと考えていました。 .cultureandregioninfobuilder.register(v = vs.110).aspx。私のターゲット国のほとんどはプリインストールされたカルチャに属していないので、これらのカルチャを登録する必要があるようです。問題は、登録を行うためのコンソールアプリで、カルチャ登録を完了するために管理者の特権が必要になることです。Windows Azureでは、開発者がクラウドサービス環境を管理することはできないと思います。

質問:管理者の特権なしでWindowsAzureにカスタムカルチャを登録するための最良の方法は何ですか。どうやら、cultureandregioninfobuilder.compileメソッドを使用してFramework 2.0でこれを行う方法がありますが、これはサポートされているメソッドではありません。より良い解決策はありますか?異なる言語をサポートできるようにするためだけに、文化ごとに異なるプロジェクトソリューションを維持する必要はありません。

前もって感謝します。

4

1 に答える 1

1

昇格された特権で実行されるスタートアップ タスクを作成し、限られたコンテキストでアプリケーションを実行することもできます。サービス構成ファイルは次のようになります。

 <ServiceDefinition name="MyCloudService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2012-10.1.8">
  <WebRole name="MyWebRole" vmsize="Small">
    <Runtime executionContext="limited">
    </Runtime>
    <Startup>
      <Task executionContext="elevated" commandLine="scripts\SetupCulture.cmd" taskType="simple">
        <Environment>
          <Variable name="CULTURE">
            <RoleInstanceValue xpath="/RoleEnvironment/CurrentInstance/ConfigurationSettings/ConfigurationSetting[@name='Culture']/@value" />
          </Variable>
        </Environment>
      </Task>
    </Startup>
    ...

   </WebRole>
 </ServiceDefinition>

これにより、サービス構成ファイルで目的のカルチャを指定できることに注意してください。最後に、.cmd ファイルで環境変数 "CULTURE" を使用して、ジョブを実行する .NET 実行可能ファイルへのパラメーターとして使用できます。

于 2013-02-20T23:09:28.677 に答える