Respostas:
Para mim, o problema foi resolvido fechando o Visual Studio, excluindo
project.lock.json
e iniciar o Visual Studio novamente.
Edit : eu estava usando RC1.
project.lock.json
?
A Microsoft mudou o modelo de hospedagem conforme descrito nas notas de lançamento .
Em project.json
substituir a dependência
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7"
com
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8"
Em web.config
na handlers
seção de remover todas as entradas, exceto
<add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" />
O completo web.config
ficará assim:
<?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: Ao usar o RC1, tive o erro após mover a pasta da solução. Depois de excluir as pastas bin
e obj
tudo funcionou novamente.
Como o usuário764754 observou, simplesmente reiniciar o Visual Studio também pode ajudar.
Para outras pessoas com este problema, nos casos em que as outras soluções não funcionam - encontrei a resposta neste tópico: Forçar o uso de SSL: Ocorreu um erro ao tentar determinar a id do processo DNX que hospeda seu aplicativo
Se o seu projeto usar ou aplicar SSL, execute-o sem depuração (CTRL + F5) primeiro, ele solicitará que você gere um certificado SSL local e, depois disso, a depuração funcionará e o erro terá desaparecido.
Pelo que vale a pena, esta é uma mensagem de erro genérica que pode servir como uma pista para qualquer número de problemas em que o httpPlatformHandler não pode iniciar o executável fornecido (dnx neste caso).
No meu caso, recebi esse erro como resultado direto de não entender o arquivo launchSettings.json. Eu estava tentando habilitar o ponto de extremidade https para meu aplicativo e dupliquei por engano o sslport em meu applicationUrl. Pelo que entendi, o applicationUrl deve ser o nome do host / porta http do aplicativo e, preenchendo o sslPort, ele apenas configura o ambiente IIS Express para escutar https no nome do host fornecido no applicationUrl na porta fornecida no sslPort.
Por exemplo:
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:44000",
"sslPort": 44300
}
}
Fornece os dois pontos de extremidade a seguir no host local.
Se você tivesse a mesma porta nas configurações applicationUrl e sslPort, receberia o erro associado a este thread.
Isso é verdade para mim no RC1
É possível atualizar, descobri que precisava olhar os novos modelos atualizados aqui .
Atualize seu web.config em wwwroot para incluir:
<httpPlatform processPath="%DNX_PATH%" arguments="%DNX_ARGS%" stdoutLogEnabled="false" startupTimeLimit="3600"/>
Você também precisará alterar a forma como o projeto depura usando Kestrel , modificando seu project.json:
"commands": {
"web": "Microsoft.AspNet.Server.Kestrel"
},
"dependencies": {
"Microsoft.AspNet.IISPlatformHandler": "1.0.0-beta8",
"Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8",
}
e modificando seu hosting.ini
server=Microsoft.AspNet.Server.Kestrel
e adicionar isso ao método Configure em startup.cs
// Add the platform handler to the request pipeline.
app.UseIISPlatformHandler();
adicionar essas referências deve permitir que você execute o projeto.
Eu encontrei este problema devido à configuração do projeto tentando iniciar https: // localhost em vez de http. Clique com o botão direito no projeto da web, em "Debug" e ajuste "URL do aplicativo" para http em vez de https.
Outra maneira de contornar isso foi mudar o inicializador de "IIS Express" para "Web"
Enquanto seguia este tutorial, recebi um erro semelhante.
Primeiro, recebi o erro: "Ocorreu um erro ao tentar determinar a ID do processo do dotnet.exe ..." Executei as seguintes etapas.
Ao tentar algumas coisas para resolver esse erro, também me deparei com esse erro. "Ocorreu um erro ao tentar determinar a identificação do processo DNX que hospeda seu aplicativo"
Que foi causado por ter outra instância do aplicativo em execução.
Espero que esta resposta ajude alguém.
No meu caso, em um projeto asp net core 1.1, .net framework 4.5.2, o erro não se referia ao dnx, pois não existe mais. Em vez disso, referia-se ao nome do projeto exe. Outra versão do erro referia-se simplesmente à impossibilidade de se conectar ao iis express.
O problema era a introdução de uma regra canônica de reescrita de nome de host que tenta forçar todas as conexões a terem um nome de host que comece com www. por exemplo, redirecionando gty.org para www.gty.org para estar em conformidade com nosso certificado SSL. Isso é bom em produção, mas você não pode forçar https: // localhost: 44347 / a começar com www e esperar que o iis express seja capaz de lidar com isso.
<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>
A solução foi comentar a regra durante a execução no Visual Studio ou adicionar uma condição:
<add input="{HTTP_HOST}" negate="true" pattern="^localhost" />
Supondo que você esteja executando o IIS Express com SSL habilitado, dependendo de sua instalação, você terá que colocar seu certificado de desenvolvimento IIS Express (emitido para "localhost" / emitido por "localhost") em [Computador local \ Pessoal \ Certificados] ou [Computador local \ Trusted Root Certification \ Certificates]. Um desses deve funcionar. (Usando Windows 10 + VS2015). HTH
Verifique o arquivo web.config para entradas inválidas. Por exemplo, ter a tag "entityFramework" lá causa esse problema para mim.
Tive esse problema ao alternar as configurações e desabilitei " Habilitar autenticação anônima " em Projeto> Propriedades> Depurar. Certifique-se de que esteja habilitado. Feche e reinicie o projeto e tente novamente. Espero que isto ajude.
Eu usei RC1 e EF First Code Approach. Uma boa ideia para iniciar a investigação é executar o projeto com a opção: "Iniciar projeto sem depuração" (Ctrl + F5). Então recebo um erro mais significativo para mim: "A seção de configuração 'entityFramework' não pode ser lida porque está faltando uma declaração de seção." Não funcionou para mim por causa do arquivo web.config.
Ao atualizar do beta7 -> beta8, tive esse problema e as sugestões fornecidas por Ben M e Domysee funcionaram para mim. No entanto, um dos meus colegas ainda estava tendo problemas para executar nosso projeto que visa dnxcore50
apenas. Se você certificar-se de que executou os seguintes comandos:
dnvm install 1.0.0-beta8 -r coreclr
dnvm install 1.0.0-beta8 -r coreclr -arch x86
Foi o segundo comando em particular que o consertou em sua máquina. Você também pode verificar se esta pasta contém um dnx.exe
:
%userprofile%\.dnx\runtimes\dnx-coreclr-win-x86.1.0.0-beta8\bin
Existem tantas coisas que podem causar esse erro. Aqui estão alguns que funcionaram para mim:
web.config
da sua wwwroot
pasta. Ele será recriado corretamente na compilação.SSL
e em IIS Express
e mover SSL Cert
para a Trusted Root Certification Authorities
pasta não funcionou. Na Debug
guia do Properties
projeto que você está tentando executar. Experimente desmarcar a Enable SSL
caixa de seleção e clicar novamente para habilitá-la e obter uma porta diferente. Você pode ter que fazer isso algumas vezes.Outra solução potencial
Para qualquer pessoa que esteja brincando com as configurações de SSL, descobri que apenas mudar a porta SSL no launchSettings.json
arquivo para outra porta próxima resolveu o problema.
Para sua informação, não consegui encontrar nada na máquina usando a porta original, nem recebi um erro de porta em uso.