Saya sedang mengerjakan proyek MVC3 dan menerima kesalahan berikut:
Pesan Kesalahan Parser: Tidak dapat memuat ketik 'GodsCreationTaxidermy.MvcApplication'.
Kesalahan Sumber:
Baris 1:
<%@ Application Codebehind="Global.asax.cs" Inherits="GodsCreationTaxidermy.Core.MvcApplication" Language="C#" %>
Kesalahan yang saya dapatkan adalah tidak dapat memuat GodsCreationTaxidermy.Core.MvcApplication tetapi dalam screen shot ini bagian Core tidak ditampilkan dalam kesalahan:
Adakah yang punya ide atau solusi untuk kesalahan ini?
asp.net
asp.net-mvc-3
PsychoCoder
sumber
sumber
Jawaban:
Server web lokal Anda menjalankan kode yang berbeda dari yang sebenarnya Anda kerjakan. Pastikan Anda telah menghentikan debugging, hentikan server web lokal Anda, bersihkan dan bangun kembali seperti yang disarankan Peter, periksa ulang global.asax dan global.asax.cs Anda, dan coba lagi.
Jika ini tidak berhasil dan Anda menggunakan IIS lokal, coba hapus situs di IIS Manager dan buat ulang secara manual.
sumber
Periksa apakah jalur keluaran proyek (properti proyek / Bangun) diatur ke
bin
dan tidakbin\Release
ataubin\Debug
Untuk beberapa alasan IIS (VS development Server atau IIS Lokal) selalu mengakses perpustakaan dari
bin
direktori (dan tidak akan mencari subdirektori)sumber
Coba modifikasi file global.asax Anda (sederhana tambahkan spasi di suatu tempat) dan jalankan kembali. ini akan memaksa server web bawaan untuk menyegarkan dan mengkompilasi ulang file global.asax.
Juga lakukan pembersihan dan pembangunan kembali - harus memperbaiki masalah
sumber
Ini kadang-kadang terjadi jika Anda mengubah informasi namespace (tingkat proyek atau kelas) setelah
global.asax
dihasilkan.Klik kanan pada
Global.asax
file tersebut dan pilih "Open With" dan kemudian pilih "XML (Text) Editor with Encoding" (editor lain mungkin berfungsi juga, tapi ini yang saya gunakan).Kemudian edit bagian "Warisan" dalam direktif XML
sehingga cocok dengan nama lengkap sebenarnya dari kelas Aplikasi Anda. Dan itu saja.
Pilihan lain adalah menyalin semua kode Anda dari Global.asax.cs dan kemudian menghapus dan membuat file Global.asax lain (dan kemudian menyalin kode kembali ke Global.asax.cs).
sumber
Global.asax
file seperti yang dinyatakan dalam jawaban ini, dan membuatnya cocok dengan apa yang ada di pengaturan Konfigurasi Proyek.Saya menutup dan membuka kembali studio visual dan itu berhasil.
sumber
Saya harus pergi ke BUILD -> CONFIGURATION MANAGER dan - ahem - centang kotak di sebelah proyek saya untuk memastikan itu benar-benar dibangun.
sumber
Saya memiliki masalah ini hari ini, dan butuh beberapa saat untuk menemukan penyebabnya.
Pada dasarnya, proyek VS2015 utama saya adalah termasuk sub-proyek yang telah dibangun menggunakan versi yang lebih tinggi dari .Net Framework.
Anehnya, ketika Anda memiliki masalah ini, VS2015 akan dengan senang hati melaporkan bahwa solusi telah dibangun dengan baik, tetapi ketika Anda mencoba dan menjalankan situs web, itu hanya memberi Anda kesalahan yang menyesatkan, menunjukkan bahwa Anda
Global.asax.cs
file salah.Jadi, jika Anda melihat kesalahan ini, dan Pembersihan / Pembangunan Kembali tidak membantu, buka
References
pohon Proyek Anda , dan periksa tanda seru.Juga, periksa
Output
jendela Anda untuk pesan seperti ini:Solusinya, tentu saja, adalah klik kanan pada proyek utama Anda, pilih tab atas, "Aplikasi", dan ubah versi Target Framework ke versi yang lebih tinggi yang cocok dengan sub-proyek Anda.
Ini menjengkelkan bahwa Visual Studio 2015 akan membiarkan Anda sepenuhnya membangun dan menjalankan Solusi yang diam-diam mengandung masalah ini. Ia meminta masalah ..!
sumber
Anda juga dapat memeriksa properti situs Anda di IIS. (Di IIS, klik kanan situs dan pilih Properti.) Pastikan pengaturan Jalur Fisik menunjuk ke jalur yang benar untuk aplikasi Anda, bukan aplikasi lain. (Itu memperbaiki kesalahan ini untuk saya.)
sumber
Saya baru saja menemukan ini pada aplikasi MVC5 dan tidak ada yang berhasil untuk saya. Ini terjadi tepat setelah saya mencoba melakukan pengembalian SVN ke versi proyek yang lebih lama.
Saya harus menghapus global.asax.cs dan kemudian menambahkan yang baru dengan mengklik kanan Project -> Add New Item -> Global.asax dan akhirnya ITU memperbaikinya.
Hanya berpikir itu mungkin membantu seseorang.
sumber
global.asax.cs
file yang ada . Itu harus diatur ke "Kompilasi". Tindakan build dariglobal.asax
file itu sendiri harus diatur ke "Konten".Saya harus melaporkan bahwa saya mencoba setidaknya 4 saran dari pos ini. Tak satu pun dari mereka yang bekerja. Namun saya senang melaporkan bahwa saya pulih dengan mengambil dari cadangan. Hanya perlu memperbarui perubahan kode terakhir saya dari file log. Butuh waktu kurang dari 10 menit. Menghabiskan 3 kali membaca posting ini dan mencoba saran lainnya. Maaf.
Itu adalah kesalahan yang sangat aneh. Semoga beruntung untuk orang lain yang menghadapi gremlin ini.
sumber
Saya memiliki masalah yang sama ketika saya memiliki 2 contoh Visual Studio menjalankan proyek yang sama. Jadi saya menutup kedua Visual Studio dan hanya membuka satu instance dan Ini berfungsi dengan baik sekarang!
sumber
Saya sedang mengerjakan proyek web ASP.NET 'folder berbasis' yang lebih lama (yang saya benci) - dan menemukan ini untuk memperbaiki saya:
Buat
App_Code
folder (jika Anda belum memilikinya)Pindahkan
Global.asax.vb
file ke dalamApp_Code
folderMarkup di Global.asax dapat mengabaikan ruang nama apa pun (setidaknya, untuk gaya proyek ini, afaik):
... di mana "MyApp" adalah nama kelas yang didefinisikan di Global.asax.vb
sumber
"BUILD -> MANAJER KONFIGURASI dan - ahem - centang kotak di sebelah proyek saya untuk memastikan itu benar-benar dibangun." Itu dan pergi ke folder proyek di windows explorer, menekan opsi dan menghapus centang pada kotak centang "Baca saja" membantu.
sumber
Kosongkan folder bin. Bangun semua perpustakaan kelas dependen dan rujuk di proyek utama, dan bangun solusi lengkap.
Sumber
sumber
Saya juga menghadapi masalah yang sama. Meskipun mengikuti setiap Jawaban itu tidak berhasil. Kemudian saya mengubah "Inherits = namespace.class " menjadi "Inherits = memenuhi syarat merakit nama " yaitu "Inherits = namespace.class, assemblyname, Version =, Culture =, PublicKeyToken = " Semoga membantu.
sumber
Ini juga dapat terjadi jika Anda secara tidak sengaja lupa untuk mengatur solusi VS Anda menjadi "Multiple Startup Projects" jika Anda menjalankan Web dan WebApi dari solusi yang sama.
Anda dapat memeriksanya dengan mengklik kanan pada Solution di Solution Explorer dan pilih 'Properties ". Kemudian cari' Startup Projects '.
sumber
Hapus
.vs
direktori dari root solusi. Bersih. Membangun kembali.Masalah ini membuatku gila sesekali dan aku akhirnya berakhir di sini mencari-cari jawaban. Saya menduga ada beberapa penyebab yang dapat menghasilkan pengecualian ini, ini pernah bekerja untuk saya.
sumber
Ya, saya membaca semua jawaban. Namun, jika Anda adalah saya dan telah mencabut semua yang tersisa dari rambut Anda, maka coba periksa folder \ bin. Seperti kebanyakan file proj mungkin memiliki beberapa konfigurasi yang dikelompokkan di bawah elemen XML
PropertyGroup
, maka saya mengubahOutputPath
nilai dari 'bin \ Debug' untuk menghapus bagian '\ Debug' dan Rebuild. Ini menempatkan file dalam folder \ bin yang memungkinkan Express IIS untuk menemukan dan memuat build. Saya bertanya-tanya apa cara yang benar untuk mengelola bangunan yang berbeda ini sehingga penyebaran debug lokal dapat menemukan dan memuat lingkungan target.sumber
Masalah ini saya selesaikan dengan memberikan izin yang benar dari folder tersebut serta memeriksa dari IIS.
Saya diberikan izin kepada semua orang karena saya menguji di lingkungan lokal saya. Namun dalam mode publikasi saya pikir kami hanya memberikan izin kepada pengguna ASP.Net.
sumber
Saya juga mendapat kesalahan yang sama ... periksa nama Aplikasi yang Anda kembangkan dengan benar yaitu. namespace dan nama assembly yang dibagikan dan juga mencoba mengubah secara fisik nama folder yang dibuat untuk aplikasi, semua ini harus sama dengan nama dalam namespace di atas yang hadir dalam file global.asax
sumber
Saya juga mendapat kesalahan yang sama ... periksa Konfigurasi IIS Direktori Virtual Anda dan pastikan Properti - ASP.NET - Versi ASP.NET sama dengan Properti Proyek - Aplikasi - Kerangka Target. (Itu memperbaiki kesalahan ini untuk saya.)
sumber
Aplikasi saya dibuat dalam versi VS yang lebih lama, dan tidak memiliki folder bin. Saya telah memutakhirkannya ke versi yang lebih baru, dan memiliki mimpi buruk untuk menggunakannya. Saya akhirnya melacak kesalahan ini hingga Project> Properties> Application. Kerangka Target ditetapkan ke 2.0; mengubahnya di server agar sesuai dengan IIS Manager / App Pool memecahkan masalah bagi saya.
sumber
Saya menemukan bahwa mengubah Namespace pada proyek, tanpa refactoring bahwa seluruh solusi adalah masalah saya. Periksa Properti proyek Anda dan lihat apa namespace Anda, pastikan bahwa berbaris, di seluruh papan.
sumber
Masalahnya bagi saya adalah saya tidak memasukkan global.asax.cs dalam proyek saya. Dan karena saya menyalin file dari .net 4.5 ke 4.0 saya tidak mengomentari baris yang tidak diperlukan di 4.0. Karena itu tidak termasuk visual studio yang disusun itu pula tanpa masalah. Tetapi ketika saya memasukkannya, itu menyoroti garis yang menyebabkan masalah.
sumber
Saya benar-benar menghabiskan satu hari mencoba menyelesaikan ini.
Satu-satunya hal yang berhasil adalah menghapus file .sln, membuat yang baru, dan menambahkan proyek kembali satu per satu.
¯ \ _ (ツ) _ / ¯ - Pemrograman - ¯ \ _ (ツ) _ / ¯
sumber
Untuk kasus saya, perakitan web adalah bagian dari GAC ... jadi setelah membangun, perlu diinstal di GAC dan itu berfungsi.
sumber
Saya menemukan pesan kesalahan ini dan akhirnya menemukan bahwa pesan kesalahan itu menyesatkan. Dalam kasus saya tampaknya ada masalah perutean di IIS yang menyebabkan global.asax dari situs lain di server web dibaca sehingga menghasilkan kesalahan.
Di IIS, situs saya terikat ke http: * 80: webservices.local dan berisi aplikasi bernama MyAPI. Saya menerima pesan yang ditakuti saat memanggil aplikasi MyAPI menggunakan alamat ip server web.
Agar berhasil memanggil aplikasi saya, saya harus menambahkan entri file host untuk layanan web.local pada semua mesin yang disebut aplikasi MyAPI. Kemudian semua permintaan saya harus diawali dengan http: //webservices.local/MyAPI/ agar dapat dirutekan dengan benar.
sumber
Saya mencoba semuanya di sini dan tidak ada yang berhasil. Proyek saya ada di VS 2013. Sejak itu saya meningkatkan ke VS 2015 dan telah membuat semua aplikasi baru saya di 2015 tetapi memuat, mengkompilasi, membangun dll semua aplikasi lama saya yang dibangun pada 2013 dalam versi itu.
Saya akhirnya hanya memuat solusi pada tahun 2015 dan menyelesaikannya untuk saya.
sumber
Saya menghabiskan beberapa hari untuk masalah ini. Saya akhirnya menyelesaikannya dengan kombinasi saran berikut dari pos ini.
bin\
bukanbin\x64\Debug
. Saya sudah mencoba ini beberapa kali sebelum saya mengubah target platform. Itu tidak pernah membuat perbedaan selain mendapatkan kesalahan yang gagal memuat perakitan karena format yang tidak valid.Agar jelas, saya harus melakukan keduanya sebelum mulai bekerja. Saya sudah mencobanya secara individual beberapa kali tetapi tidak pernah memperbaikinya sampai saya melakukan keduanya.
Jika saya mengubah salah satu dari pengaturan ini kembali ke aslinya, saya mendapatkan kesalahan yang sama lagi, meskipun telah menjalankan Solusi Bersih, dan secara manual menghapus semua yang ada di
bin
direktori.sumber
Dua cara untuk mendapatkan ini:
Manajer konfigurasi memperlihatkan build dll sebagai campuran build '64' dan 'any cpu'. Menempatkan mereka semua ke build yang sama akan memperbaikinya.
Saat berpindah antar cabang, jalur cepat IIS terkadang tidak diperbarui. Klik kanan 'IIS Express' di bilah tugas> Tampilkan semua aplikasi dan benar-benar jalurnya menuju cabang yang benar.
sumber