Saya telah mengunduh proyek online di ASP.Net. Saat menjalankan aplikasi saya mendapatkan kesalahan
Adalah kesalahan untuk menggunakan bagian yang terdaftar sebagai allowDefinition = 'MachineToApplication' di luar level aplikasi. Kesalahan ini dapat disebabkan oleh direktori virtual yang tidak dikonfigurasi sebagai aplikasi di IIS.
Perubahan apa yang harus saya buat di web.config atau di tempat lain untuk membuat ini berfungsi?
asp.net
visual-studio-2012
Deepali
sumber
sumber
obj
folder.Jawaban:
Saya baru saja mengalami "kegembiraan" ini. Tampaknya muncul sendiri setelah saya menerbitkan aplikasi web dalam mode rilis.
Satu-satunya cara untuk secara konsisten menyelesaikan masalah yang saya temukan adalah dengan mengikuti daftar periksa ini:
sumber
MvcBuildViews
ketrue
.Temui saja posting ini dan itu terjadi pada saya.
Hanya
Clean
proyek dan kesalahannya hilang. (harus berupa bug VS2010)sumber
obj
folder. Ini terkadang perlu dihapus juga.Saya baru saja mengalami masalah ini ketika membangun versi kedua situs web saya. Itu tidak terjadi ketika saya membangunnya pertama kali.
Saya baru saja menghapus folder bin dan obj, menjalankan Solusi Bersih dan membangunnya lagi, kali ini tanpa masalah.
sumber
Tidak ada Anda perlu mengatur direktori tempat Anda meletakkan situs web sebagai aplikasi web di dalam IIS .
sumber
Kesalahan ini terjadi ketika Anda mencoba untuk membuka proyek sebagai situs web. Cara termudah untuk menentukan apakah Anda telah membuat situs web atau proyek adalah dengan memeriksa folder solusi Anda (yaitu tempat Anda menyimpan kode Anda) dan melihat apakah Anda memiliki file * .sln di direktori root, jika Anda melakukannya maka Anda akan Saya sudah membuat proyek.
Hanya untuk menambahkan, saya mengalami kesalahan ini sekarang ketika saya mencoba untuk membuka proyek yang saya buat beberapa waktu lalu dengan memilih "File", "Open Website" dari menu Visual Studio sedangkan saya harus memilih "File", "Open Project" sebagai gantinya. Saya facepalmed segera setelah saya menyadari :)
sumber
Dalam Visual Studio 2013 saya berjuang dengan ini untuk sementara waktu dan itu cukup mudah untuk diselesaikan cukup ikuti apa yang dikatakan pengecualian "direktori virtual tidak dikonfigurasi sebagai aplikasi di IIS"
Dalam kasus saya saya telah
WebService
ditanam di dalamIIS website
sehinggaConvert to Application
Ok
WCF kembali dan berjalan.
sumber
Kesalahan menunjukkan bahwa kode yang Anda gunakan mengharapkan direktori virtual untuk diatur pada IIS.
Cari dokumentasi dan tambahkan direktori virtual yang diperlukan. Itu harus direktori yang memiliki
web.config
di dalamnya (bukan direktori root).sumber
<authentication mode="Forms"><forms name="..." loginUrl="~/Login/Login/" timeout="2880" /></authentication>
dalam bukunyaWeb.config
diViews
ketimbang folder trunk, yang menyebabkan masalah ini.Jika Anda memiliki proyek MVC dengan tampilan bangunan yang diaktifkan, salah satu solusinya adalah menghapus folder obj sebelum membangun. Tambahkan ke file proyek:
Berikut ini artikelnya: Cara menghapus folder bin dan / atau obj sebelum build atau deploy
sumber
Perubahan web.config baru-baru ini mungkin ada di file web.config yang salah.
Sebuah
<machineKey...>
properti telah ditambahkan ke Tampilan / web.config . Tidak peduli berapa banyak Pembersihan dan Pembangunan Kembali kesalahan tetap ada. Cara mengatasinya adalah memindahkan properti ke root /web.config .sumber
jika Anda pernah mengalami kesalahan ini
SOLUSI
Saya memiliki masalah yang sama dengan VS 2012. Saya menyelesaikannya dengan
<MvcBuildViews>false</MvcBuildViews>
Jika Anda memiliki maka satu solusinya adalah menghapus konten folder obj dalam proyek yang dihasilkan oleh kompiler.
sumber
MvcBuildViews
untuktrue
adalah bagaimana saya punya kesalahan di tempat pertama.<MvcBuildViews>true</MvcBuildViews>
Dalam kasus saya, masalah muncul hanya setelah saya menerbitkan proyek ke subdirektori. Karena kurangnya pengetahuan saya, saya telah menempatkan
web_publish
subdirektori saya di dalamweb_project
direktori.Jelas bahwa
web_publish
isinya juga samaWeb.config
dengan yang dikandung proyek. Namun,web_project
tidak tahu bahwa sayaweb_publish
harus dihindari ketika mencariWeb.config
di subdirektori bersarang. Dengan cara ini,Web.config
s digandakan dan kesalahan muncul.Solusinya adalah menempatkan saya di
web_publish
tempat lain.sumber
Dalam kasus saya ada folder "Cadangan" yang berisi salinan lain dari seluruh situs web di sana. Ini berarti yang lain
web.config
dan build gagal dengan kesalahan ini. Saya menghapus folder "Cadangan", melakukan solusi Bersihkan pada pembuatan Debug dan Rilis, dan kesalahannya hilang.sumber
Dalam kasus saya,
Solusi berisi 6 proyek, 1 direktori utama dan 5 sub direktori. semua sub direktori memiliki web.config.
Saat menjalankan halaman apa pun di dalam sub direktori, saya mendapatkan kesalahan yang sama.
Saya menghapus baris ini dari web.config,
itu berhasil untuk saya.
sumber
Bersihkan proyek Anda Hapus folder / obj (mungkin menggunakan publish dan deploy? - ada bug di dalamnya)
sumber
Masalah saya adalah saya secara tidak sengaja menerbitkan layanan web saya ke lokasi yang telah selesai pada instalasi baru VS2010.
Saya telah menerbitkan ke folder bernama PreCompiledWeb , dan keberadaan web.config saya curiga mengacaukannya.
Saya hanya nuked folder, dan menyegarkan proyek.
Ketika mengklik dua kali kesalahan ini - saya butuh file web.config yang salah, yang memberi saya tip.
sumber
Ini mungkin masalah versi seperti Anda mengunduh proyek .Net framework 2.0 dan ingin membukanya ke dalam VS2008 maka Anda perlu memutakhirkan ke versi terbaru dan VS akan membuat Backup folder di direktori root yang sama. Anda akan dapatkan jawabannya di sini .
sumber
Saya memiliki kesalahan ini ketika membangun solusi dengan Web Deployment Project yang dibuat menjadi solusi saya. Saya mengatasi kesalahan dengan menghapus folder tempat Proyek Penyebaran Web dibangun. Folder ini ditentukan dalam atribut "Project Folder" dari properti WDP
sumber
Hapus folder tempat sampah dan keberatan. Kemudian buat kembali solusinya.
sumber
Rupanya ada dua file web.config dalam solusi saya. Saya menggunakan MVC4 dan ada file konfigurasi lain di bawah Views dan saya membuat perubahan pada file yang salah. Memperbaiki sana membantu saya.
Tetapi Anda selalu dapat mengubah pengalihan / rute default di file global.asax.
sumber
Mungkin Anda memiliki folder proyek sub asp.net dalam folder proyek yang tidak dikonfigurasi sebagai direktori virtual. Atur proyek untuk berjalan di IIS.
sumber
Saya menambahkan ke skrip publikasi situs web saya. Pada akhirnya, hapus folder obj dari folder situs web Anda.
sumber
Saya mengalami masalah ini lebih sering jika "true" diaktifkan di file proyek.
Seperti yang dikatakan Jonny:
sumber
Saya punya proyek yang saya tidak ingin menjadi aplikasi web saya ingin itu menjadi folder. Jawabannya adalah menghapus file web.config sekaligus. Itu hanya milik root aplikasi.
sumber
Jika Anda menghadapi masalah ini saat menerbitkan situs web atau aplikasi Anda di beberapa server, solusi sederhana yang saya gunakan adalah mengonversi folder yang berisi file ke aplikasi web.
sumber
Convert to Application
.Saya punya masalah yang sama di VS 2013 setelah menerbitkan proyek saya dalam mode debug. Masalahnya telah dipecahkan dengan menghapus obj / file
sumber
Saya punya proyek situs web.
Dalam kasus saya, saya telah memindahkan file solusi ke jalur lain dan itu menyebabkan masalah. Saya mengembalikannya ke lokasi sebelumnya dan masalah keluar.
sumber
Untuk yang masih mencari, solusi saya adalah menghapus folder bin dan obj dan restart visual studio sepertinya memperbaikinya.
sumber
Melalui Visual Studio, saya telah menerbitkan Layanan WCF melalui FTP , ke server eksternal. Ini bekerja dengan baik secara lokal, dan ketika menerbitkan ke server internal, tetapi tidak ke eksternal. Solusinya adalah mempublikasikan tanpa menyediakan
Site Path
(dengan kata lain, mempublikasikan langsung ke root direktori virtual).Saya tidak yakin mengapa ini berhasil, karena saya sudah mencoba memindahkan file ke root melalui Klien FTP eksternal - di antara banyak upaya lain, termasuk semua yang tercantum di sini. Mungkin ada sesuatu dengan profil publikasikan, seperti itu untuk FabianVal . Tetapi saya tidak lagi ingin menguji lagi pada saat ini, karena saya sedang terburu-buru untuk mempercepat setelah semua hari yang terbuang untuk masalah ini.
sumber
tip 1: bersihkan & kemudian bangun kembali.
tip 2: tutup saja VS dan buka lagi.
tip 3: proyek yang diunduh mungkin berada di dalam sub folder lain ... buka folder yang berisi file .net Anda.
c: / demo1 / demo / (semua file)
Anda harus membuka demo dari vs ... bukan demo1.
sumber
Saya mencoba setiap solusi di atas, tetapi tidak ada yang berhasil untuk masalah saya. (Saya yakin ada 1000 solusi untuk masalah ini) Untuk skenario saya, saya berusaha untuk mempublikasikan layanan web WCF yang saya uji dalam produksi.
Namun, saya gagal menyadari bahwa dalam produksi kami hanya HTTPS, artinya kami mengarahkan semuanya ke HTTPS. Ternyata, saya menunjuk ke layanan melalui HTTP, bukan HTTPS, sehingga menyebabkan kesalahan. Solusi dalam skenario ini adalah dengan mengubah protokol alamat menjadi HTTPS daripada HTTP.
Saya harap itu membantu beberapa jiwa miskin di luar sana mencoba memecahkan masalah ini.
sumber