Baru-baru ini saya bertemu pengecualian berikut di solusi C #:
Kesalahan 2 Tidak dapat memuat file atau rakitan 'Newtonsoft.Json, Versi = 3.5.0.0, Kultur = netral, PublicKeyToken = b9a188c8922137c6' atau salah satu dari dependensinya. Parameter salah. (Pengecualian dari HRESULT: 0x80070057 (E_INVALIDARG))
Ini tidak tergantung pada kode saya atau pada nama majelis (seperti Newtonsoft.Json
dalam kasus ini).
Ketika saya menghapus dll ini dari solusi, kompiler memberitahu tentang yang lain dalam pengecualian yang sama. Jadi saya kira sesuatu harus dimatikan / hidup di PC saya :)
Jawaban:
Sepertinya rakitan rusak sedang dirujuk.
Hapus keduanya:
folder \ bin proyek Anda
folder temp (harus
C:\Users\your_username\AppData\Local\Temp\Temporary ASP.NET Files
di windows 7)dan lihat apakah kesalahan masih terjadi
sumber
Tergantung pada apakah Anda menjalankan X64, Anda mungkin perlu membersihkan beberapa tempat lagi. Membersihkan direktori pengguna saya saja tidak cukup.
Daftar ini akan tumbuh seolah-olah Anda memiliki versi lain dari kerangka kerja yang diinstal.
sumber
Saya harus membersihkan
Baru saat itulah masalah terselesaikan.
sumber
Untuk mengetahui apa yang harus dihapus dengan pasti - tambahkan kunci registri berikut:
Maka Anda akan melihat output seperti di bawah ini. Ini memberi tahu Anda di mana asp.net berusaha memuat DLL Anda. Bersihkan direktori ini.
sumber
Hapus file kerangka kerja sementara untuk proyek Anda di: -
C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ File ASP.NET Sementara \
sumber
Anda juga dapat menghapus direktori paket dan mengizinkan NuGet untuk mengunduh ulang paket yang hilang
itu memecahkan masalah bagi saya
sumber
Hapus semua file dari folder ini.
sumber
Mendapatkan serangkaian binari baru dari kontrol Sumber membantu.
Terima kasih
sumber
Cukup bersihkan folder ini: (hanya windows x64)
sumber
Terima kasih Alex poin kedua Anda membantu saya memperbaikinya.
Tampaknya kecuali Anda menjalankan visual studio sebagai administrator di Windows 7 itu menyimpan file temp Anda secara lokal daripada C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files.
Lihat posting blog berikut: http://www.dotnetscraps.com/dotnetscraps/post/Location-of-Tentara-ASPNET-files-in-Vista-or-Windows-7.aspx
sumber
Saya memiliki masalah yang sama di sini - solusi di atas tidak berhasil. Masalahnya dengan ActionMailer. Saya menjalankan uninstall berikut dan menginstal perintah nuget
Menyelesaikan masalah saya, semoga akan membantu orang lain.
sumber
Ini dapat terjadi saat mereferensikan dll pembungkus COM. Dalam Proyek Visual Studio Anda, di bawah Referensi, pilih dll pembungkus COM yang direferensikan dan pastikan mereka memiliki nilai properti berikut: "Jenis Interop Sematan": Salah dan "Versi Spesifik": Salah.
sumber
Saya hanya menghapus data temp aplikasi saya dari jalur ini
Mengatasi masalah
sumber
Saya melihat banyak teknisi telah memposting tentang membersihkan direktori sementara ASP .Net run-time yang berkaitan dengan masing-masing dan setiap kerangka .Net yang di-host pada mesin Anda seperti dalam hal ini. jawaban . Tapi saya percaya kita harus tahu logistik yang jelas mengapa kita perlu membabi buta semua direktori kerja sementara dari semua .Net framework. Menurut saya, seharusnya tidak demikian.
Saran saya adalah Anda harus mencoba pendekatan pembersihan direktori berujung pin untuk mengatasi masalah ini. Bagaimana Anda tahu direktori mana yang harus dihapus?
Manage Application
->Advanced Settings...
untuk membukaAdvanced Settings
jendela.DefaultAppPool
seperti yang ditunjukkan di bawah ini:Application Pools
simpul di bilah navigasi kiri di IIS. Sekarang periksa versi .Net CLR mana yang sedang dijalankan oleh kumpulan aplikasi Anda. Dalam kasus saya ini adalah v4.0 seperti yang ditunjukkan di bawah ini:Karena versi CLR yang dihosting oleh kumpulan aplikasi saya adalah v4.0, jadi saya hanya menghapus file sementara dalam folder yang berkaitan dengan ASP .NET v4.0 hanya sebagai berikut:
Dan itu saja. Masalah saya terselesaikan.
Hal yang dipelajari : Ini menunjukkan fakta bahwa semua file sementara yang digunakan oleh situs web Anda tidak tersebar di beberapa direktori tetapi mereka sekaligus dirujuk oleh kumpulan aplikasi Anda. Jadi, Anda perlu menghapus folder tertentu saja.
sumber
Menghapus C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ File ASP.NET Sementara berfungsi untuk saya. Berpikir mengotomatiskan proses penghapusan untuk menghindari masalah di masa depan.
sumber
Jika Anda menggunakan Alat Data SQL Server 2012, yang menggunakan shell VS2010 pada 1 Mei 2013, periksa pengaturan Manajer Konfigurasi Anda. Perubahan nama server dari Workflow ke xCPWorkflow sudah cukup untuk menghasilkan yang sama persis . Parameter tidak benar (Pengecualian dari HRESULT: 0x80070057 (E_INVALIDARG)) pesan.
sumber
Anda dapat membersihkan, membangun atau membangun kembali aplikasi Anda atau cukup menghapus File ASP.NET Sementara di C: \ Users \ USERNAME ANDA \ AppData \ Local \ Temp
Ini bekerja seperti sulap. Dalam kasus saya saya punya masalah yang mengikat perakitan mengatakan Tidak dapat memuat file bla bla bla
Anda juga dapat melihat solusi 2 sebagai http://www.codeproject.com/Articles/663453/Understanding-Clean-Build-and-Rebuild-in-Visual-St
sumber
Saya punya masalah ini saat membuat controller di MVC. Saya mengubah versi .net framework. Masalah terselesaikan
sumber
Masalahnya berkaitan dengan versi .Net runtime dari pustaka kelas yang direferensikan (referensi yang diperluas, pilih pustaka dan periksa "Versi Runtime". Saya memiliki masalah dengan Antlr3.Runtime, setelah memutakhirkan proyek studio visual saya ke v4.5. Saya menggunakan NuGet untuk menghapus instalasi Microsoft ASP.NET Web Optimization Framework (karena rantai ketergantungan yang mencegah saya menghapus Antlr3 secara langsung)
Saya kemudian menggunakan NuGet untuk menginstal ulang Microsoft ASP.NET Web Optimization Framework. Ini menginstal ulang versi runtime yang benar.
sumber
Dalam kasus saya, saya ingin mengkompilasi DLL yang terlihat COM. Masalahnya adalah bahwa versi yang lebih lama dari DLL ini berlokasi di sini:
Jadi Visual Studio memuat versi ini dan bukan versi yang baru dikompilasi, ketika mencoba mendaftarkannya.
sumber
Hapus semua file dari folder sementara (C: \ Users \ user_name \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ folder proyek)
sumber
Terkadang Anda juga perlu membersihkan folder ini: C: \ Windows \ Temp \ Temporary ASP.NET
sumber
Saya menghadapi kesalahan yang sama karena aplikasi tidak menemukan kerangka kerja dependen di
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\
folder. Saya hanya memperbaiki studio Visual saya yang menambahkan kerangka kerja yang diperlukan di lokasi di atas dan berfungsi dengan baik.sumber
Dalam kasus saya, mengubah nomor port IISExpress di properti proyek saya, menyelesaikan masalah.
sumber
Jika ada orang lain di luar sana yang menggunakan alat WiX, saya menemukan bahwa proyek penginstal saya memiliki referensi ke proyek lama yang baru saja dihapus dari solusi. Butuh beberapa saat untuk saya sadari karena ada sejumlah proyek dalam solusi yang saya coba bangun dan pesannya tidak menunjukkan proyek mana yang gagal dibangun (dan bersih, yang juga gagal).
sumber
Saya memiliki pengguna Siemens Teamcenter 10 Client untuk Microsoft Office yang mendapatkan kesalahan yang sama tentang DLL yang berbeda. Tidak ada jawaban lain yang berfungsi. Solusinya adalah menghapus folder di
sumber
Saya memiliki masalah serupa saat membuka manajer Paket Nuget, saya menghapus semua file temp dan membangun proyek, itu bekerja dengan baik.
sumber