Visual Studio 2015 Community と SQL Server 2016 Express のみがインストールされているクリーンな Windows 10 マシンにプロジェクトをコピーしました。Windows 10 と VS2015 または SQL Server でインストールされたもの以外に、他のフレームワーク バージョンはインストールされていません。
WebApi プロジェクトを開始しようとすると、次のメッセージが表示されます。
ファイルまたはアセンブリ「System.Net.Http、バージョン=4.0.0.0、カルチャ=中立、PublicKeyToken=b03f5f7f11d50a3a」またはその依存関係の 1 つを読み込めませんでした。指定されたファイルが見つかりません。
プロジェクトのパッケージには以下が含まれます。
<package id="Microsoft.AspNet.WebApi" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Client" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.Tracing" version="5.2.3" targetFramework="net45" />
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net45" />
.NET Framework 4.6.1 を使用してプロジェクトをビルドした後、フォルダーSystem.Net.Http
内にファイルが見つかりませんbin
。
ファイルのパスは次の場所を指します:
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.6.1\System.Net.Http.dll
ファイルのパスはSystem.Net.Http.Formatting
次の場所を指します:
C:\Development\MyApp\packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll
プロジェクト全体を 4.5.1 をターゲットにする必要がありますか、それとも適切なアセンブリを参照する別の方法がありますか?
ベストアンサー1
以下の手順に従ってください。
Visual Studio を最新バージョンに更新する (重要です)
すべてのバインディングリダイレクトを削除する
web.config
ファイルに以下を追加します
.csproj
:<PropertyGroup> <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> <GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType> </PropertyGroup>
プロジェクトを構築する
フォルダ内にファイル
bin
があるはずです(WebAppName).dll.config
リダイレクトが含まれているはずなので、これをコピーして
web.config
.csproj
ファイルから上記の部分を削除します
動作するはずです。