2012-01-13 6 views

Respuesta

42

El principal cambio es actualizar las referencias relevantes a la última versión (4.0 /2.0). Es necesario actualizar los archivos de configuración de Internet para actualizar la versión de los siguientes espacios de nombres

  • System.Web.Mvc (Cambiar a 4.0.0.0)
  • System.Web.Webpages (Cambio a 2.0.0.0)
  • System.Web.Helpers (Cambio a 2.0.0.0)
  • System.Web.WebPages.Razor (Cambio a 2.0.0.0)

también es necesario actualizar el archivo web.config nivel de la raíz tener estas entradas de aplicaciones

<appSettings> 
    <add key="webpages:Version" value="2.0.0.0" /> 
    <add key="PreserveLoginUrl" value="true" /> 
</appSettings> 

Luego debe actualizar las DLL a las que se hace referencia en el proyecto. Elimine la referencia de dll MVC3 existente y agregue MVC4 (use el administrador de paquetes nuget para hacer esto)

Este link maneja todos los aspectos de la conversión. Remítalo según sea necesario.

+1

esto no funcionó para mí. –

+1

Necesitaba hacer un paso adicional: borré las referencias de mi proyecto a System.Web.Mvc, System.Web.WebPages, System.Web.Helpers y agregué referencias para las versiones más recientes. – Rn222

4

Su mejor opción es instalar el MVC4 desde el instalador de la plataforma. Luego siga los pasos en la página oficial asp.net/mvc/mvc4. Si sigues (solo) las instrucciones de Shyju, no funcionaría.

Cuando termine con las instrucciones oficiales, busque en su directorio de Vistas, y puede encontrar otro web.config con otra referencia al conjunto MVC y varios otros para la afeitadora. También desea cambiar las versiones de estas líneas. Básicamente reemplazar cada 3.0.0.0 a encontrar para 4.0.0.0 y 1.0.0.0 2.0.0.0 para

SI NO hacer este cambio ÚLTIMO, puede terminar con el error EN EL SIGUIENTE QUESTION

Busque incluidos dll y asegúrese de que sean para las versiones correctas.

16

Siga los pasos oficiales publicados aquí:

http://www.asp.net/whitepapers/mvc4-release-notes#_Toc303253806

Nota: Estos pasos cubren el lanzamiento oficial - no es la vista previa para desarrolladores.

+1

Este enlace ya se proporcionó en [Respuesta de Shyju] (http://stackoverflow.com/a/8853408/2188245), junto con una descripción. –

+1

Sí, así fue, pero omitió algunos pasos, y este no es un procedimiento que deba reproducirse en StackOverflow.com. Los desarrolladores deben ir directamente a la fuente sin pasar Go. – Seth

5

Mejor aún, utilice la herramienta de actualización automática:

https://www.nuget.org/packages/UpgradeMvc3ToMvc4

+1

Encontré que este es el método rápido, simple y fácil, pero también se agregó en los paquetes de OAuth que no necesitaba. –

+0

Esto falló para mí sin una razón real (no anoté el error, lo siento).Tuve que ir por la ruta manual. – willem

+0

Esa es una herramienta demasiado invasiva ... hace demasiadas presunciones, incluida la interferencia en una gran cantidad de cosas openAuth. Para aplicaciones de autenticación de Windows de intranet simplemente rompe todo. Usar con precaución. –