2012-06-15 9 views
8

Estamos utilizando Teamcity para hacer construcciones de integración continua para nuestro sitio web y acabamos de actualizar nuestro sitio web a .NET 4.5RC. La aplicación se compila y se ejecuta en IIS Express en mi caja y se compila en nuestro servidor de compilación que he instalado .NEt 4.5RC en. Pero cuando lo implementamos en el servidor que tiene .Net 4.5RC instalado en él, obtenemos el siguiente error.Implementación de un sitio web .Net 4.5 en un servidor IIS 7.5

El grupo de aplicaciones que está intentando utilizar tiene la propiedad 'managedRuntimeVersion' establecida en 'v4.0'. Esta aplicación requiere 'v4.5'.

Qué puedo hacer para solucionar este problema. He intentado configurar el grupo de aplicaciones en el servidor a 4.5, pero no puedo. Ver this SO post.

+0

Amigo, tienes que 1) actualizar .Net en tu servidor IIS, y/o 2) apuntar a tu compilación para una versión inferior de .Net (4.0 o, mejor aún, 3.5 si es posible que necesites ejecutar en otro lugar). PD: .Net 4.5 es bastante sangriento (acabo de actualizarlo ayer, para algunas cosas preliminares de Windows 8). ¿Estás * seguro * necesitas 4.5? – paulsm4

+2

Ya he instalado .Net 4.5RC en el servidor. De ahí la declaración '... al servidor que ha tenido .Net 4.5RC instalado en él, se obtiene el siguiente error'. Estamos probando en nuestro servidor de desarrollo para una próxima aplicación que se lanzará después de 4.5 va RTM. – PlTaylor

+0

¿Qué versión de .net runtime está configurada en la AppPool? –

Respuesta

4

Resulta que es un problema de TeamCity. Cuando empujamos la actualización directamente al sitio desde Visual Studio 2012 RC, funciona bien. Tuvimos que cambiar el corredor de compilación en TeamCity a un corredor de línea de comandos que llama a WebDeploy 3.0 de VS 2012.

+1

@PITaylor, tengo el mismo problema con TeamCity. ¿Puedes por favor detallar cómo arreglaste esto? –

+0

No tengo acceso al servidor en este momento, pero básicamente cambiamos el corredor de construcción del .net build runner a un corredor de construcción de línea cmd y ejecutamos msbuild fuera del cuadro de compilación de ese modo después de instalar vs 2012 en el cuadro de compilación . – PlTaylor

0

OK - suficiente. Necesita utilizar IIS 7.5, debe tener como destino .Net 4.5 ... y ellos deben ser compatibles.

Echa un vistazo a este enlace; busque "Aspnet_regiis.exe":

http://msdn.microsoft.com/en-us/library/ee942158.aspx

'Espero que ayude .. PSM

PS:

Estos enlaces puede (o no) también será útil:

Por favor, después de vuelta lo que encuentre.

+1

He vuelto a registrar aspnet_regiis.exe desde el directorio .net4.0 ya que no hay un directorio 4.5. Y todavía no parece querer instalar en el servidor. – PlTaylor

+0

Esos enlaces parecen hacer referencia a .Net 4.0 y no parecen resolver mi problema. – PlTaylor

+0

.net 4.5 es una extensión para 4.0, debería funcionar. –

14

Tuve un problema similar. Estaba construyendo mi aplicación llamando a MSBuild, y descubrí que cuando intenté implementar la aplicación en la web, recibí ese error. me fijo contando MSBuild construir con VS2012, mediante la adición de un interruptor de línea de comandos para el comando de MSBuild:

/P:VisualStudioVersion=11.0 

Tip O el sombrero para this question.

+0

Agregando este interruptor resuelto mi poblem –

+0

Solucionado para mí :) –

1

que estaba enfrentando el mismo problema incluso después de usar /P:VisualStudioVersion=11.0, así como ignorar la versión managedruntime en el proj archivo.

ejecutar el comando

C:\Windows\System32\inetsrv>appcmd set apppool /apppool.name: DefaultAppPool /managedRuntimeVersion:v4.5 

Después de esto, restablezca la ISS.

Cuestiones relacionadas