Я получаю это сообщение об ошибке, когда пытаюсь запустить приложение.
Произошла ошибка при попытке определить идентификатор процесса DNX, на котором размещено ваше приложение.
Есть ли способ решить проблему?
c#
asp.net-core
Domysee
источник
источник
project.lock.json
?Microsoft изменила модель хостинга, как описано в примечаниях к выпуску .
В
project.json
заменить зависимостьс участием
В
web.config
вhandlers
разделе удалить все записи , кромеВ комплекте
web.config
будет выглядеть так:RC1: При использовании RC1 у меня возникла ошибка после перемещения папки решения. После удаления
bin
иobj
папки все работает снова.Как заметил user764754, простой перезапуск Visual Studio также может помочь.
источник
Для других людей, у которых есть эта проблема, в случаях, когда другие решения не работают - я нашел ответ в этой теме: Принуждение к использованию SSL: произошла ошибка при попытке определить идентификатор процесса DNX-процесса, на котором размещено ваше приложение.
Если ваш проект использует или применяет SSL, сначала запустите его без отладки (CTRL + F5), он попросит вас сгенерировать локальный сертификат SSL, и после этого отладка будет работать, и ошибка исчезнет.
источник
Как бы то ни было, это общее сообщение об ошибке, которое может служить отвлекающим маневром для любого количества проблем, когда httpPlatformHandler не может запустить данный исполняемый файл (в данном случае dnx).
В моем случае я получил эту ошибку как прямой результат неправильного понимания файла launchSettings.json. Я пытался включить конечную точку https для своего приложения и по ошибке продублировал sslport в моем applicationUrl. Насколько я понимаю, applicationUrl должен быть именем хоста / портом http приложения, и, заполнив sslPort, он просто настраивает среду IIS Express для прослушивания https на имени хоста, указанном в applicationUrl на порту, указанном в sslPort.
Например:
Предоставляет следующие две конечные точки на localhost.
Если бы у вас был один и тот же порт в настройках applicationUrl и sslPort, вы бы получили ошибку, связанную с этим потоком.
Это актуально для меня на RC1
источник
Возможно обновление, я обнаружил, что мне нужно просмотреть новые обновленные шаблоны здесь .
Обновите свой web.config в wwwroot, включив в него:
Вам также нужно будет изменить способ отладки проекта с помощью Kestrel , изменив свой project.json:
и измените свой hosting.ini
и добавив это в метод Configure в startup.cs
добавление этих ссылок должно позволить вам запустить проект.
источник
Я столкнулся с этой проблемой из-за того, что конфигурация проекта пытается запустить https: // localhost вместо http. Щелкните правой кнопкой мыши веб-проект в разделе «Отладка» и настройте «URL-адрес приложения» на http вместо https.
Еще один способ обойти это - переключить программу запуска с «IIS Express» на «Web».
источник
В Visual Studio:
Следуя этому руководству, я получил аналогичную ошибку.
Сначала я получил сообщение об ошибке: «Произошла ошибка при попытке определить идентификатор процесса dotnet.exe ...» Я предпринял следующие шаги.
Пытаясь решить эту ошибку, я также столкнулся с этой ошибкой. "Произошла ошибка при попытке определить идентификатор процесса DNX-процесса, на котором размещено ваше приложение"
Это было вызвано запуском другого экземпляра приложения.
Надеюсь, этот ответ кому-то поможет.
источник
В моем случае в проекте asp net core 1.1, .net framework 4.5.2 ошибка не относилась к dnx, так как его больше нет. Вместо этого он ссылался на имя проекта exe. Другая версия ошибки связана с невозможностью подключиться к iis express.
Проблема заключалась в введении канонического правила перезаписи имени хоста, которое пытается заставить все соединения иметь имя хоста, начинающееся с www. например, перенаправление с gty.org на www.gty.org для соответствия нашему сертификату ssl. Это нормально в производственной среде, но вы не можете заставить https: // localhost: 44347 / начинать с www и ожидать, что iis express сможет справиться с этим.
Решением было закомментировать правило при запуске в Visual Studio или добавить условие:
источник
Предполагая, что вы используете IIS Express с включенным SSL, в зависимости от вашей установки вам нужно будет поместить свой сертификат разработки IIS Express (выданный на «localhost» / выданный «localhost») либо в [Local Computer \ Personal \ Certificates], либо в [Local Computer \ Сертификация доверенного корня \ Сертификаты]. Один из них должен работать. (Используется Windows 10 + VS2015). HTH
источник
Проверьте файл web.config на наличие недопустимых записей. Например, наличие тега entityFramework вызывает у меня эту проблему.
источник
У меня была эта проблема, когда я переключаю настройки и отключил « Включить анонимную аутентификацию » в Project> Properties> Debug. Убедитесь, что он включен. Закройте и перезапустите проект, затем повторите попытку. Надеюсь это поможет.
источник
Я использовал подход первого кода RC1 и EF. Хорошая идея для начала исследования - запустить проект с опцией: «Начать проект без отладки» (Ctrl + F5). Тогда я получаю более значимую для меня ошибку: «Раздел конфигурации entityFramework не может быть прочитан, потому что в нем отсутствует объявление раздела». У меня не получилось из-за файла web.config.
источник
источник
При обновлении с beta7 до beta8 у меня возникла эта проблема, и предложения, предоставленные Ben M и Domysee, помогли мне. Однако у одного из моих коллег все еще были проблемы с запуском нашего проекта, который предназначен
dnxcore50
только для целей . Если вы убедитесь, что выполнили следующие команды:Именно вторая команда исправила это на его машине. Вы также можете дважды проверить, есть ли
dnx.exe
в этой папке :источник
Я только что обнаружил еще одну проблему, которая была причиной этого!
web.config
в корне проекта были некоторые хитрые правила перезаписи URL-адресов IIS для обеспечения соблюдения HTTPS. Удаление этих правил решило проблему.источник
Есть очень много вещей, которые могут вызвать эту ошибку. Вот несколько из них:
web.config
в своейwwwroot
папке. Он будет правильно воссоздан при компиляции.SSL
и в своем,IIS Express
и перемещениеSSL Cert
вTrusted Root Certification Authorities
папку не сработало. ВоDebug
вкладкеProperties
проекта, который вы пытаетесь запустить. Попробуйте снятьEnable SSL
флажок, а затем щелкните его еще раз, чтобы включить его и получить другой порт. Возможно, вам придется проделать это несколько раз.источник
Еще одно возможное решение.
Для тех, кто играет с настройками SSL, я обнаружил, что простое изменение SSL-порта в
launchSettings.json
файле на другой ближайший порт решило проблему.К вашему сведению, я не смог ничего найти на машине, использующей исходный порт, и не получил ошибку использования порта.
источник