4

MVC3 Web アプリケーションに ACS 認証を使用しています。ローカル マシンでは問題なく動作していますが、これを Azure にアップロードすると、このエラーが発生します。CopyLocal=True を設定しました。助けてください

Unable to find assembly 'Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Runtime.Serialization.SerializationException: Unable to find assembly 'Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.  
4

3 に答える 3

6

これに関する詳細情報。ローカルにコピーします。コードで RoleEnvironment API を使用しない限り、Microsoft.IdentityModel.dll が bin ディレクトリにあることを確認してください。この場合、次の既知の問題が発生します。

http://msdn.microsoft.com/en-us/library/windowsazure/hh403974.aspx

この場合、Microsoft.IdentityModel は Azure VM の GAC に存在する必要があります。これを行うには、スタートアップ タスクを使用します。この投稿では、これを実現する 2 つの方法について説明します。

http://blogs.infosupport.com/adding-assemblies-to-the-gac-in-windows-azure/

于 2012-06-20T16:31:39.023 に答える
3

私はマイクロソフトで働いています。ヒット数が少ないため、hh403974.aspx でこの記事を削除しましたが、このスレッドからまだいくつかの参照が得られているため、記事の内容を以下に貼り付けます。

RoleEnvironmentAPI が呼び出されると、アセンブリ 'Microsoft.IdentityModel' が見つかりません

適用対象: 完全な IIS Web ロールと Windows Identity Foundation を使用する SDK1.3 以降に適用されます。

症状: RoleEnvironment メソッドへの最初の呼び出しで、次の例外が発生します。

[SerializationException: アセンブリ 'Microsoft.IdentityModel、Version=3.5.0.0、Culture=neutral、PublicKeyToken=31bf3856ad364e35' が見つかりません。]

原因: Windows Identity Foundation アセンブリが Azure 仮想マシンに正しくインストールされていません。

解決策: スタートアップ タスクを使用して、Windows Identity Foundation パッケージを仮想マシンに再インストールします。

スタートアップ タスクの使用の詳細については、「 Azure でスタートアップ タスクを実行する」を参照してください。

于 2014-11-22T20:22:09.457 に答える
1

Azure マシンにWIF ランタイムが欠落している可能性があります。

于 2012-04-15T21:10:41.010 に答える