Pregunta

Estamos cambiando una solución con más de 20 proyectos de .net 2.0 a 3.5 y al mismo tiempo cambiamos de Visual Studio 2005 a 2008. También estamos cambiando al mismo tiempo de MS Entlib 2.0 a 4.0.

  • ¿Hay alguna razón para no dejar que la Asistente de Visual Studio convertir el solución para nosotros?
  • Es 3.5 totalmente compatible con versiones anteriores con 2.0?
  • Es Entlib 4.0 totalmente compatible con versiones anteriores con 2.0?

Editar: podría estar un poco confundido cuando escribí esto, se supone que significa compatibilidad con versiones anteriores; ¿hay algo que exista en un proyecto 2.0 que no funcione / compile en 3.5

:)

// W

¿Fue útil?

Solución

Actualizamos una solución bastante grande (más de 20 proyectos) de 2005 a 2008, pero fue realmente trivial. Proyecto de actualización solo básicamente. El marco subyacente sigue siendo el mismo, ya que tanto 3.0 / 3.5 como 2.0 comparten el mismo marco central.

Como se dijo anteriormente, aunque está actualizando, no necesita cambiar la referencia del marco de trabajo para los proyectos; de hecho, el valor predeterminado es dejar el marco en 2.0 en lugar de cambiarlo a 3.0 / 3.5. Esto significa que no podrá aprovechar las características 3.0 / 3.5 hasta que cambie la referencia (página Propiedades del proyecto, Tabla de aplicación " Marco de destino ''), pero también significa que tiene mucha más seguridad de que no habrá más. problemas de compatibilidad (ya que aparecerá un error al agregar el código 3.0 / 3.5 hasta que se cambie esa referencia).

Las nuevas funciones de TFS 2008 tampoco deberían pasarse por alto, aunque no es necesario que actualice su aplicación para poder utilizar TFS 2008.

La conversión de

1.1 a 2.0 fue mucho más dolorosa ...

Otros consejos

Actualicé varios proyectos de Visual Studio 2005 a 2008 con el Asistente, y todos fueron indoloros (bueno ... excepto por esa bestia de C ++. Pero de todas formas estás hablando de .NET).

Tenga en cuenta que no necesita actualizar la versión .NET. Visual Studio 2008 admite .NET 2.0, 3.0 y 3.5. Sin embargo, 3.5 es compatible con versiones anteriores de todos modos, ya que se encuentra en el mismo CLR y es, más o menos, solo algunas bibliotecas adicionales. Y el " antiguo " Las bibliotecas permanecen igual.

No sé sobre Entlib.

¿Por qué no intentas y ejecutas tus pruebas de unidad? :)

  • ¿Hay alguna razón para no permitir que el asistente de Visual Studio convierta la solución para nosotros?

No.

  • ¿Es 3.5 totalmente compatible con 2.0?

No. Hay nuevas características en 3.5 que no se portarían hacia atrás de forma nativa. Y (IIRC) hay algunas desaprobaciones que van de 2.0 a 3.5.

  • ¿Entlib 4.0 es totalmente compatible con 2.0?

No lo creo. 3.5 se enumera como un requisito.

Haga una copia de seguridad, ejecute el asistente, vea qué sucede. Es posible que tome un tiempo para un proyecto tan grueso, pero estará en una posición en la que podrá saber si se construirá o se ejecutará como se esperaba.

Cuando actualicé de EntLib 2.0 a 4.0, observé el siguiente cambio de código fuente de ruptura si utilizas el bloque de aplicación de almacenamiento en caché:

  • En 2.0, obtienes un administrador de caché usando CacheManager cache = CacheFactory.GetCacheManager () .
  • En 4.0, debes reemplazar CacheManager con ICacheManager o no se compilará.

Además, si está escribiendo su propia clase de formateador de excepciones para el bloque de Manejo de excepciones:

  • En 2.0, debe definir un constructor con la firma (TextWriter, Exception) .
  • En 4.0, eso es obsoleto, y tienes que definir un segundo constructor con la firma (TextWriter, Exception, Guid) .

No se supone que haya cambios de ruptura al migrar de EntLib 3.1 a 4.0:

" No hay cambios de ruptura en la API pública. Ese fue uno de los objetivos de diseño de EL4. Solo recuerda que EL4 requiere .NET3.5.

--Grigori "

http://blogs.msdn.com/agile/archive/2008/05/16/enterprise-library-4-0-for-visual-2008-released.aspx

(Grigori es el Administrador de programas para EntLib)

Aunque no estoy seguro acerca de 2.0 a 3.1. Si puedo encontrar las personas adecuadas @ p & amp; p mañana, actualizaré esto.

Ade

Consulte este enlace sobre cómo migrar de .net 2.0 a .net 3.5

http: //codingreview.blogspot .com / 2009/09 / how-to-migrate-your-application-from.html

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top