Bagaimana cara mendapatkan 'System.Web.Http, Versi = 5.2.3.0?


89

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

Jawaban:


118

Di Konsol Pengelola Paket

Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3


Saya melakukannya tetapi masih memberi saya kesalahan yang sama <br/> <pre> PM> install-package microsoft.aspnet.webapi.core -version 5.2.3 Mencoba menyelesaikan ketergantungan 'Microsoft.AspNet.WebApi.Client (≥ 5.2.3 ) '. Mencoba menyelesaikan ketergantungan 'Newtonsoft.Json (≥ 6.0.4)'. 'Microsoft.AspNet.WebApi.Core 5.2.3' sudah diinstal. www.ptsol.com.au sudah memiliki referensi ke 'Microsoft.AspNet.WebApi.Core 5.2.3'. </pre>
John Hadikusumo

4
@JohnHadikusumo melakukan ini untuk semua proyek Anda. Tampaknya Anda memiliki proyek yang bergantung dengan versi yang lebih lama.
Rap

Ya, ini akan berhasil. Bacalah dengan cermat Web.config dan packages.config Anda sebelum dan sesudah Anda menjalankan perintah ini dan Anda akan melihat apa yang berubah.
AlfredBr

Memecahkan masalah saya.
Phon Soyang

Saya harus menggunakan Install-Package Microsoft.AspNet.WebApi.Client -Version 5.2.7sebagai gantinya (.Client bukan .Core). Saya sudah memiliki. Inti 5.2.7, tetapi saya masih mendapatkan kesalahan. nuget.org/packages/Microsoft.AspNet.WebApi.Client
user224567893

19

Salah 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".


Ini berhasil untuk saya. Kami memiliki bindingRedirectpenyiapan <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />tetapi mengubahnya untuk digunakan 4.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!
jamiebarrow

8

Saya melakukannya Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3tetapi 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.


7

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


7

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


3

Menghapus instalasi dan menginstal ulang paket NuGet berhasil untuk saya.

  1. Hapus referensi lama apa pun dari proyek.

Jalankan ini di Package Manager Console:

  1. UnInstall-Package Microsoft.AspNet.WebApi.Core -version 5.2.3
  2. Install-Package Microsoft.AspNet.WebApi.Core -version 5.2.3

Hanya yang ini yang memecahkan masalah saya. Saya telah melakukan banyak hal dan win-action sangat sederhana.
George Lanetz
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.