Como definir a versão do .net Framework 4.5 no pool de aplicativos do IIS 7

203

Instalei o Visual Studio 11 Beta e, de repente, todos os métodos de ação assíncrona que havia criado na visualização do desenvolvedor do VS 11 começaram a ser interrompidos (aparentemente esse problema: http://blogs.msdn.com/b/pfxteam/archive/2012/03/ 03 / 10277166.aspx ).

Meu aplicativo está usando a v4.0.30319 como a versão do Framework, mas não há opção para usar o 4.5. Reparei minha instalação do .net 4.5 para ter certeza, mas nada. Existe uma maneira de configurar isso no IIS? Preciso instalar os arquivos em bin (e, em caso afirmativo, qual)?

Gene Reddick
fonte
6
Link para .Net 4.5 instalação para servidores, em qualquer pessoa terras caso aqui olhando para ele: microsoft.com/en-us/download/details.aspx?id=30653
Chris Moschini
2
Desligada .NET Framework 4.5.1 instalador: microsoft.com/en-us/download/details.aspx?id=40779
Peter Beijo
1
O .NET 4 e o .NET 4.5 (incluindo 4.5.1 e 4.5.2) estão no CLR versão 4.0 >>> Mais detalhes: msdn.microsoft.com/en-us/library/8bs2ecf4(v=vs.110). aspx
VnDevil 18/09/2015

Respostas:

381

Não há pool de aplicativos 4.5. Você pode usar qualquer aplicativo 4.5 no pool de aplicativos 4.0. O .NET 4.5 é "apenas" uma atualização in-loco, não uma nova versão importante.

Peter Kiss
fonte
Obrigado. Eu suspeitava disso, embora não estivesse claro por que as chamadas assíncronas estão falhando. Vou colocar isso em uma pergunta diferente.
Gene Reddick
2
Eu tenho um pool de aplicativos 4.5 no IIS após a instalação do Visual Studio 2012 e 4.5 e Windows 8
Brian Mains
30
Sim, o Apppool tem o nome ".NET v4.5", mas verifique a coluna da versão do .NET Framework na tela IIS - Pools de aplicativos, será 4.0. (Há 3 base de CLR: 1.0, 2.0, 4.0.)
Peter Beijo
O que está acontecendo aqui? Eu não tenho 4,5 listado como uma versão do framework ainda este SO QA diz que há um novo CLR, ao contrário do Peter stackoverflow.com/questions/8810391/...
Luke Puplett
4
msdn.microsoft.com/en-us/library/bb822049(v=vs.110).aspx - Seção Recursos e IDE; não é um novo CLR
Peter beijo
35

Vá em "Executar" e execute o seguinte:

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir

NOTA: execute como administrador.

Vitor Sousa
fonte
só queria dizer obrigado, tão feliz que eu finalmente encontrei esta solução
Jordan Wayne Crabb
Meu aplicativo me lembra de não encontrar o .net Framework 4.5 quando tento executá-lo com o VS 2015. Depois de executar este comando, ele funciona como um encanto. Obrigado. Lembre-se de executar como administrador no CMD.
precisa saber é o seguinte
19

Não há v4.5 mostrada na GUI e, normalmente, você não precisa especificar manualmente a v4.5, pois é uma atualização no local. No entanto, você pode configurá-lo explicitamente com o appcmd assim:

appcmd set apppool /apppool.name: [App Pool Name] /managedRuntimeVersion:v4.5

Appcmd está localizado em %windir%\System32\inetsrv. Isso me ajudou a corrigir um problema com o Web Deploy, no qual estava lançando um erro ERROR_APPPOOL_VERSION_MISMATCH após a atualização da v4.0 para a v4.5.

Artigo da Microsoft sobre como configurar a versão .Net para o pool de aplicativos

Walter
fonte
1
Ao instalar o IIS antes de instalar o ASP.Net 4.5 ou 4.0, você pode enfrentar um registro ausente na metabase. O uso de aspnet_regiis pode ajudar a redefinir o IIS em todo o servidor, mas observe que ele atualizará todos os pools de aplicativos para a versão selecionada.
Jan Hebnes 11/08/2015