Saya baru saja membuat proyek MVC5 dan menambahkan beberapa paket dari nuget, tetapi kemudian ketika saya mengkompilasi proyek, saya mendapat kesalahan ini. Tampaknya salah satu paket sangat bergantung pada system.web.http versi 5.2.3.0, yang tidak dapat saya temukan di mana pun. Saya hanya ingin tahu bagaimana cara mendapatkan versi terbaru dari system.web.http?
Kesalahan 2 Majelis 'System.Web.Http.WebHost, Versi = 5.2.3.0, Budaya = netral, PublicKeyToken = 31bf3856ad364e35' menggunakan 'System.Web.Http, Versi = 5.2.3.0, Budaya = netral, PublicKeyToken = 31bf3856ad364e35' yang memiliki versi yang lebih tinggi dari rakitan yang direferensikan 'System.Web.Http, Versi = 5.0.0.0, Budaya = netral, PublicKeyToken = 31bf3856ad364e35'
d: \ Backup 2014-12-25 \ Website-Projects \ www.ptsol.com.au \ packages \ Microsoft.AspNet.WebApi.WebHost.5.2.3 \ lib \ net45 \ System.Web.Http.WebHost.dll
asp.net-mvc
asp.net-mvc-5
nuget
John Hadikusumo
sumber
sumber
Install-Package Microsoft.AspNet.WebApi.Client -Version 5.2.7
sebagai gantinya (.Client bukan .Core). Saya sudah memiliki. Inti 5.2.7, tetapi saya masih mendapatkan kesalahan. nuget.org/packages/Microsoft.AspNet.WebApi.ClientSalah satu cara untuk memperbaikinya adalah dengan memodifikasi assembly redirect di file web.config.
Ubah yang berikut ini:
<dependentAssembly> <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" /> </dependentAssembly>
untuk
<dependentAssembly> <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="4.0.0.0" /> </dependentAssembly>
Jadi atribut oldVersion harus berubah dari "...- 4.0.0.0" menjadi "...- 5.2.3.0".
sumber
bindingRedirect
penyiapan<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
tetapi mengubahnya untuk digunakan4.0.0.0
. Masih tidak masuk akal bagi saya, karena harus menggunakan DLL paket NuGet dan bukan versi GAC, tapi hei, berhasil ... jadi terima kasih!Saya melakukannya
Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3
tetapi tetap tidak berhasil. Kemudian lihat di folder bin proyek saya dan lihat bahwa itu masih memiliki file System.Web.Mvc yang lama.Jadi saya menyalin file yang lebih baru secara manual dari paket ke folder bin. Kemudian saya bangun dan berlari lagi.
sumber
Instal-Paket Microsoft.AspNet.WebApi.Core -version 5.2.3
Kemudian di proyek Add Reference -> Browse. Tekan tombol browse dan pergi ke C: \ Users \ UserName \ Documents \ Visual Studio 2015 \ Projects \ ProjectName \ packages \ Microsoft.AspNet.Mvc.5.2.3 \ lib \ net45 dan tambahkan file .dll yang diperlukan
sumber
Paket-paket yang Anda instal memperkenalkan dependensi ke versi 5.2.3.0 dll seperti yang ditunjukkan oleh pengguna Bracher di atas. Microsoft.AspNet.WebApi.Cors adalah contoh paket. Jalur yang saya ambil adalah memperbarui proir proyek MVC ke semua paket penginstalan:
Install-Package Microsoft.AspNet.Mvc -Version 5.2.3
https://www.nuget.org/packages/microsoft.aspnet.mvc
sumber
Menghapus instalasi dan menginstal ulang paket NuGet berhasil untuk saya.
Jalankan ini di Package Manager Console:
UnInstall-Package Microsoft.AspNet.WebApi.Core -version 5.2.3
Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3
sumber