Saya memiliki aplikasi MVC kecil yang saya gunakan untuk alasan latihan, tetapi sekarang saya menemukan kesalahan setiap kali saya mencoba untuk debug:
Could not load file or assembly 'System.Net.Http.Formatting' or one of its dependencies.
The system cannot find the path specified.
Saya sudah googled tetapi tidak dapat menemukan solusi. Saya menggunakan .NET 4.5.
Tidak dapat berupa file DLL karena saya menggunakan .Net 4.5.
c#
asp.net
.net
asp.net-mvc-4
Norris
sumber
sumber
Jawaban:
Setiap kali saya memiliki kesalahan NuGet seperti ini saya biasanya mengambil langkah-langkah ini:
Mengambil semua langkah ini hampir selalu mengembalikan semua paket dan lain-lain yang saya butuhkan untuk program MVC saya.
Sunting >>>
Untuk Visual Studio 2013 dan di atasnya, langkah 2) harus membaca:
sumber
Hapus semua referensi kode
System.Net.*
di jendela paket,
Install-Package Microsoft.AspNet.WebApi.Client
Bersihkan dan bangun kembali proyek Anda
sumber
Web.Config
bindingRedirect
untukSystem.Net.Http.Formatting
danSystem.Web.Http
ke yang baru diinstal oleh perintah di atas ... yaitu ia pergi dari<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0"/>
ke<bindingRedirect oldVersion="0.0.0.0-4.0.30319" newVersion="4.0.30319"/>
Saya menemukan tambahan
di web.config saya. dihapus itu untuk membuatnya berfungsi. beberapa paket lain yang saya instal, dan kemudian dihapus menyebabkan masalah.
sumber
user3919888 mengarahkan saya ke arah yang benar, tetapi saya harus menjalankannya
Update-Package -reinstall Microsoft.AspNet.WebApi.Client
di konsol Package-Manager. Instalasi dasar dengan sendirinya tidak mengenali masalah tetapi mengakui bahwa paket sudah diinstal dan tidak menimpanya.Saya memposting jawaban ini karena hal ini sangat jarang terjadi sehingga saya akhirnya googling dan mencapai halaman ini sebelum saya ingat apa yang saya lakukan terakhir kali.
sumber
Menghapus baris berikut dari
web.config
menyelesaikan masalah saya. Perhatikan bahwa dalam proyek ini saya tidak menggunakan komponen WebApi. Jadi bagi orang lain solusi ini mungkin tidak berfungsi seperti yang diharapkan.sumber
Bagi mereka yang menggunakan proyek .NET Standard dalam kombinasi dengan .NET Framework proyek :
Dengan cara .NET Standard, paket yang termasuk dalam proyek .NET Standard akan digunakan dengan benar di seluruh proyek .NET Core dan .NET Standard lainnya.
Sebagai cara .NET Framework, jika Anda merujuk ke proyek .NET Standard dari proyek .NET Framework (MVC), Anda perlu mengunduh dan menginstal paket nuget yang sama secara manual.
Jadi jawaban untuk pertanyaan saya adalah bahwa saya harus mengunduh dan menginstal
Microsoft.AspNet.WebApi.Client
proyek web (.NET Framework) yang menggunakan proyek .NET Standar di manaMicrosoft.AspNet.WebApi.Client
diperlukan. Sebenarnya, saya sudah menginstal ini tetapi ada perbedaan versi.Saya hanya menambahkan jawaban ini untuk dilihat orang lain, mungkin tidak langsung menjawab pertanyaan OP tetapi itu menghemat waktu saya dengan terlebih dahulu memeriksa ini alih-alih melakukan jawaban terpilih.
sumber
System.Net.*
Microsoft.AspNet.WebApi
dan dependensinya.Microsoft.AspNet.WebApi
dan dependensinya.sumber
Seperti yang awalnya disarankan dalam komentar oleh GeoMac dan didokumentasikan pada dokumen NuGet berikut ini bekerja untuk saya ketika tidak ada jawaban lain yang bekerja:
Tools / Manajer Paket NuGet / Konsol Manajer Paket
sumber
Dalam kasus saya tidak ada solusi di atas yang berfungsi. Saya menyelesaikannya dengan mengklik kanan pada referensi
dari Visual studio dan mengatur properti Copy Local ke true .
Saya harap ini bermanfaat entah bagaimana.
sumber
Yang memecahkan kesalahan yang mengganggu ini bagi saya adalah menutup Visual Studio dan membukanya lagi. Kemudian bangun kembali solusinya, dan semuanya bekerja lagi. Maaf untuk jawaban omong kosong, tapi saya pikir itu layak untuk dijawab karena itu menyelesaikannya untuk saya.
sumber
Bagi saya itu sesederhana
Microsoft.AspNet.WebApi.Client
dari folder paket di Windows Explorersumber
Namun, dalam kasus saya, tidak ada yang di atas yang berfungsi, menggantikan 5.2.3.0 dengan 4.0.0.0 yang menyelesaikan masalah.
sumber
Saya menghadapi masalah yang sama karena
versi yang ditulis di dalam webconfig adalah 5.0.3 tetapi di dalam folder bin perpustakaan System.Net.Http.Formatting dll versi adalah 4.0.2
jadi saya hanya mengganti dengan yang sama di dalam bin
lakukan saja proyek dan pembangunan bersih ini
sumber
Mungkin Anda perlu menetapkan referensi pustaka sebagai "Salin Lokal = Benar" pada dialog properti. Pada visual studio klik "referensi" lalu klik kanan pada referensi yang hilang, dari properti klik menu konteks, Anda akan melihat menyalin pengaturan lokal.
sumber
Bagi saya menambahkan beberapa baris di bawah ini di WebApi.config berfungsi karena setelah memperbarui paket nuget baru tidak berhasil
Jangan lupa menambahkan namespace:
sumber
Apa yang saya lakukan untuk menyelesaikan masalah ini adalah
Pergi ke manajer paket NuGet.
Pilih Pembaruan (dari panel kiri)
Perbarui komponen WebApi
Setelah itu, proyek berjalan tanpa kesalahan.
sumber
VS2019: Alat -> Pengelola Paket Nuget -> Pengaturan Pengelola Paket -> di bagian Pemulihan Paket, periksa 2 opsi. Setelah itu, pergi ke folder paket proyek dan hapus semua folder anak di dalamnya (untuk tidak ada lagi kesalahan) Kemudian solusi Rebuild, Nuget akan mengunduh ulang semua paket dan proyek harus berjalan tanpa referensi.
sumber
Saya punya masalah dengan proyek ASP.NET di VS 2019.
Gejala lain adalah, bahwa beberapa referensi (System.Web.Http) ditandai sebagai salah dalam daftar referensi proyek (Solution Explorer)
Solusi saya:
Penyebab:
Melihat perbedaan dalam file csproj saya bisa melihat alasan masalah. Seseorang berhasil mereferensi DLL di folder file Program Windows!
sumber