Jawaban:
Bagi saya masalahnya diselesaikan dengan menutup Visual Studio, menghapus
project.lock.json
dan memulai Visual Studio lagi.
Edit : Saya menggunakan RC1.
project.lock.json
?
Microsoft mengubah model hosting seperti yang dijelaskan dalam catatan rilis .
Dalam project.json
menggantikan ketergantungan
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7"
dengan
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8"
Di web.config
dalam handlers
bagian menghapus setiap entri kecuali
<add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
Lengkapnya web.config
akan terlihat seperti ini:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified"/>
</handlers>
<httpPlatform processPath="%DNX_PATH%" arguments="%DNX_ARGS%" stdoutLogEnabled="false" startupTimeLimit="3600"/>
</system.webServer>
</configuration>
RC1: Saat menggunakan RC1, saya mengalami error setelah memindahkan folder solusi. Setelah menghapus folder bin
dan obj
semuanya berfungsi kembali.
Seperti dicatat oleh user764754, cukup dengan me-restart Visual Studio juga dapat membantu.
Untuk orang lain yang mengalami masalah ini, dalam kasus di mana solusi lain tidak berfungsi - Saya menemukan jawabannya di utas ini: Memaksa menggunakan SSL: Terjadi kesalahan saat mencoba menentukan id proses dari proses DNX yang menghosting aplikasi Anda
Jika proyek Anda menggunakan atau memberlakukan SSL, jalankan tanpa debugging (CTRL + F5) terlebih dahulu, ini akan meminta Anda untuk menghasilkan sertifikat SSL lokal, dan setelah itu debugging akan berfungsi dan kesalahan akan hilang.
Untuk apa nilainya, ini adalah pesan kesalahan umum yang dapat berfungsi sebagai pengalih perhatian untuk sejumlah masalah di mana httpPlatformHandler tidak dapat meluncurkan executable yang diberikan (dnx dalam kasus ini).
Dalam kasus saya, saya menerima kesalahan ini sebagai akibat langsung dari kesalahpahaman file launchSettings.json. Saya mencoba mengaktifkan titik akhir https untuk aplikasi saya dan secara keliru menduplikasi sslport di applicationUrl saya. Seperti yang saya pahami, applicationUrl haruslah nama host / port http aplikasi dan dengan mengisi sslPort, ia hanya mengonfigurasi lingkungan IIS Express untuk mendengarkan https pada nama host yang diberikan dalam applicationUrl pada port yang disediakan di sslPort.
Sebagai contoh:
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:44000",
"sslPort": 44300
}
}
Menyediakan dua titik akhir berikut di localhost.
Jika Anda memiliki port yang sama di pengaturan applicationUrl dan sslPort, Anda akan menerima kesalahan yang terkait dengan utas ini.
Ini berlaku untuk saya di RC1
Dimungkinkan untuk meningkatkan, saya menemukan saya harus melihat-lihat templat baru yang diperbarui di sini .
Perbarui web.config Anda di wwwroot untuk memasukkan:
<httpPlatform processPath="%DNX_PATH%" arguments="%DNX_ARGS%" stdoutLogEnabled="false" startupTimeLimit="3600"/>
Anda juga perlu mengubah cara proyek men - debug menggunakan Kestrel dengan memodifikasi project.json Anda:
"commands": {
"web": "Microsoft.AspNet.Server.Kestrel"
},
"dependencies": {
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-beta8",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8",
}
dan memodifikasi hosting.ini Anda
server=Microsoft.AspNet.Server.Kestrel
dan menambahkan ini ke metode Konfigurasi di startup.cs
// Add the platform handler to the request pipeline.
app.UseIISPlatformHandler();
menambahkan referensi ini akan memungkinkan Anda menjalankan proyek.
Saya mengalami masalah ini karena konfigurasi proyek mencoba meluncurkan https: // localhost alih-alih http. Klik kanan pada proyek web, di bawah "Debug" dan sesuaikan "URL Aplikasi" menjadi http, bukan https.
Cara lain untuk menyiasati ini adalah mengalihkan peluncur dari "IIS Express" ke "Web"
Saat mengikuti tutorial ini saya menerima kesalahan serupa.
Pertama, saya menerima kesalahan: "Terjadi kesalahan saat mencoba menentukan id proses dotnet.exe ..." Saya mengambil langkah-langkah berikut.
Saat mencoba beberapa hal untuk mengatasi kesalahan itu, saya juga menemukan kesalahan ini. "Terjadi kesalahan saat mencoba menentukan id proses dari proses DNX yang menghosting aplikasi Anda"
Yang disebabkan oleh instance aplikasi lain yang sedang berjalan.
Saya harap jawaban ini membantu seseorang.
Dalam kasus saya dalam proyek asp net core 1.1, .net framework 4.5.2, kesalahan tidak merujuk ke dnx karena itu tidak lebih. Sebaliknya itu merujuk pada nama proyek exe. Versi lain dari kesalahan yang merujuk pada tidak dapat menyambung ke iis express.
Masalahnya adalah pengenalan aturan penulisan ulang nama host kanonik yang mencoba memaksa semua koneksi untuk memiliki nama host yang dimulai dengan www. mis. mengalihkan gty.org ke www.gty.org untuk menyesuaikan dengan sertifikat ssl kami. Ini bagus dalam produksi tetapi Anda tidak dapat memaksa https: // localhost: 44347 / untuk memulai dengan www dan berharap iis express dapat menanganinya.
<rule name="CanonicalHostNameAddwww" enabled="true" stopProcessing="true">
<match url="(.*)" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" negate="true" pattern="^www\." />
</conditions>
<action type="Redirect" url="http://www.{HTTP_HOST}{HTTP_URL}" appendQueryString="false" redirectType="Permanent" />
</rule>
Solusinya adalah mengomentari aturan saat berjalan di studio visual atau menambahkan kondisi:
<add input="{HTTP_HOST}" negate="true" pattern="^localhost" />
Dengan asumsi Anda menjalankan IIS Express dengan SSL Diaktifkan tergantung pada instalasi Anda, Anda harus meletakkan IIS Express Development Certificate (Dikeluarkan untuk "localhost" / Diterbitkan Oleh "localhost") baik di [Komputer Lokal \ Personal \ Certificates] atau [Komputer Lokal \ Sertifikasi Root Terpercaya \ Sertifikat]. Salah satunya harus bekerja. (Menggunakan Windows 10 + VS2015). HTH
Periksa file web.config untuk entri yang tidak valid. Misalnya, memiliki tag "entityFramework" di sana menyebabkan masalah ini bagi saya.
Saya mengalami masalah ini ketika saya mengubah pengaturan dan telah menonaktifkan " Aktifkan Otentikasi Anonim " di Proyek> Properti> Debug. Pastikan itu diaktifkan. Tutup dan luncurkan kembali proyek, lalu coba lagi. Semoga ini membantu.
Saya menggunakan RC1 dan EF First Code Approach. Ide bagus untuk memulai investigasi adalah menjalankan proyek dengan opsi: "Mulai proyek tanpa debbuging" (Ctrl + F5). Kemudian saya mendapatkan kesalahan yang lebih berarti bagi saya: "Bagian konfigurasi 'entityFramework' tidak dapat dibaca karena deklarasi bagian tidak ada." Itu tidak berhasil untuk saya karena file web.config.
Saat memutakhirkan dari beta7 -> beta8 saya mengalami masalah ini dan saran yang diberikan oleh Ben M dan Domysee berhasil untuk saya. Namun, salah satu kolega saya masih mengalami kendala dalam menjalankan proyek yang kami targetkan dnxcore50
saja. Jika Anda yakin telah menjalankan perintah berikut:
dnvm install 1.0.0-beta8 -r coreclr
dnvm install 1.0.0-beta8 -r coreclr -arch x86
Itu adalah perintah kedua khususnya yang memperbaikinya di mesinnya. Anda juga dapat memeriksa ulang folder ini memiliki dnx.exe
di dalamnya:
%userprofile%\.dnx\runtimes\dnx-coreclr-win-x86.1.0.0-beta8\bin
Ada begitu banyak hal yang dapat menyebabkan kesalahan ini. Berikut beberapa yang berhasil untuk saya:
web.config
di wwwroot
folder Anda . Ini akan dibuat ulang dengan benar saat kompilasi.SSL
dan dalam IIS Express
dan memindahkan Anda SSL Cert
ke Trusted Root Certification Authorities
folder tidak berhasil. Di Debug
tab Properties
proyek yang Anda coba jalankan. Coba hapus Enable SSL
centang pada kotak dan kemudian klik lagi untuk mengaktifkannya dan mendapatkan port yang berbeda. Anda mungkin harus melakukannya beberapa kali.Solusi potensial lainnya
Bagi siapa pun yang bermain dengan pengaturan SSL, saya menemukan hanya mengubah port SSL di launchSettings.json
file ke port terdekat lainnya telah menyelesaikan masalah.
FYI, saya tidak dapat menemukan apa pun di mesin yang menggunakan port asli, saya juga tidak mendapatkan kesalahan port dalam penggunaan.