Organización de un proyecto para admitir .NET Framework y .NET
Puede crear una solución que se compile para .NET Framework y .NET en paralelo. En este artículo se tratan varias opciones de organización del proyecto para ayudarlo a lograr este objetivo. Estos son algunos escenarios típicos que se deben tener en cuenta a la hora de decidir cómo configurar el diseño del proyecto con .NET. Es posible que la lista no cubra todo lo que quiere.
Combinar los proyectos existentes y los de .NET en un solo proyecto
Ventajas
- Simplifica el proceso de compilación mediante la compilación de un proyecto único en lugar de varios proyectos, donde cada uno de ellos tiene como destino una plataforma o versión distinta de .NET Framework.
- Simplifica la administración de archivos de origen en proyectos con compatibilidad con múltiples versiones, porque debe administrar un solo archivo de proyecto. Al agregar o quitar archivos de origen, las alternativas exigen que los sincronice manualmente con los otros proyectos.
- Para generar fácilmente un paquete NuGet para consumo.
- Permite escribir código para una versión de .NET Framework específica mediante directivas del compilador.
Desventaja:
- Exige que los desarrolladores que usan Visual Studio 2019 o una versión posterior abran los proyectos existentes. Para admitir versiones anteriores de Visual Studio, una opción mejor es mantener los archivos de proyecto en distintas carpetas.
Mantener todos los proyectos separados
Ventajas
- Permite el desarrollo en proyectos existentes por parte de desarrolladores y colaboradores que podrían no tener Visual Studio 2019 o una versión posterior.
- Reduce la posibilidad de crear nuevos errores en proyectos existentes porque estos no requieren renovación de código.
Tenga en cuenta este repositorio de GitHub de ejemplo. En la ilustración siguiente se muestra cómo está dispuesto este repositorio:
En las secciones siguientes se explican varias maneras de agregar compatibilidad con .NET en función del repositorio de ejemplo.
Reemplazo de proyectos existentes por un proyecto de .NET con varios destinos
Reorganice el repositorio de manera que se quite cualquier archivo *.csproj existente y se cree un archivo *.csproj único que establezca varios marcos de trabajo como destino. Esta es una opción excelente, porque un proyecto único se puede compilar para distintos marcos. También tiene la capacidad de controlar distintas dependencias y opciones de compilación por cada marco de trabajo de destino.
Para obtener un ejemplo de código, vea GitHub.
Los cambios que debe tener en cuenta son los siguientes:
- Reemplazo de packages.config y *.csproj por un nuevo *.csproj de .NET. Los paquetes NuGet se especifican con
<PackageReference> ItemGroup
.
Mantenimiento de los proyectos existentes y creación de un proyecto de .NET
Si hay proyectos existentes que tienen como destino marcos anteriores, se recomienda dejarlos intactos y usar un proyecto de .NET para establecer como destino marcos futuros.
Para obtener un ejemplo de código, vea GitHub.
Los proyectos existentes y el de .NET se mantienen en carpetas independientes. El mantenimiento de los proyectos en carpetas independientes evita que sea necesario tener Visual Studio 2019 o versiones posteriores. Puede crear una solución independiente que solo abra los proyectos anteriores.
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de