web-dev-qa-db-ja.com

フレームワークのバージョンがMiniProfilerと一致しないことを訴えるASP.NETコンパイラ

VS2010からVS2012にアップグレードしたMVC3プロジェクトがあります。プロジェクトには、MiniProfilerへの参照もあります。私たちのアプリケーションは、VS2012で問題なくコンパイルされ、警告やエラーなしで実行されます。 IIS Expressで実行すると、両方のアセンブリが正常に読み込まれます。ただし、ASP.NETコンパイラツールを使用すると、次の警告が表示されます。

Microsoft(R)ASP.NETコンパイルツールバージョン4.0.30319.17929 ASP.NETアプリケーションをプリコンパイルするユーティリティCopyright(C)MicrosoftCorporation。全著作権所有。

(0):警告:次のアセンブリは、ターゲットよりも高いバージョンの.NET Frameworkに依存しており、実行時に正しく読み込まれず、障害が発生する可能性があります:MiniProfiler、Version = 2.1.0.0、Culture = neutral、PublicKeyToken = b44f9351044011a3。依存関係は、System.Data.Linq、Version = 4.0.0.0、Culture = neutral、PublicKeyToken = b77a5c561934e089です。依存アセンブリがターゲットフレームワークに対して正しいことを確認するか、アドレス指定しているターゲットフレームワークが依存アセンブリのフレームワークであることを確認する必要があります。

System.Data.Linqへの明示的な参照はありません。 VS2012にアップデートするまで、エラーはありませんでした。 MiniProfilerバージョンは、実際に.NET 4.0を対象としています(アプリケーションと同様)。この警告の原因は何ですか?

27
TheCloudlessSky

この答え からのヒントでようやく修正することができました。 <add>に次のweb.config行を追加しました。

<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.0">
      <assemblies>
        <!-- etc... -->
        <add Assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
        <!-- etc... -->
      </assemblies>
    </compilation>
  <system.web>
</configuration>
22
TheCloudlessSky

Web.configでtargetFrameworkを変更しましたか?

1
Andrei