¿Hay alguna forma de abrir y trabajar en el proyecto .net framework 4.5 en visual studio 2022 ?
Puede que el problema no sea con VS2022, pero como el paquete de desarrollador .NET .net framework 4.5 ya no está disponible... mi proyecto no se puede cambiar de versión de destino... ¿Hay alguna solución?
Para .NET 4.0, este comando lo instalará por usted si tiene los archivos de Visual Studio 2019 almacenados en caché:
msiexec.exe /i "%ALLUSERSPROFILE%\Microsoft\VisualStudio\Packages\Microsoft.Net.4.TargetingPack,version=4.0.30319.1\netfx_dtp.msi" EXTUI=1Para .NET 4.5, esto podría funcionar, aunque no lo he probado:
msiexec.exe /i "%ALLUSERSPROFILE%\Microsoft\VisualStudio\Packages\Microsoft.Net.4.5.2.TargetingPack,version=4.5.51651.1\netfx_452mtpack.msi" EXTUI=1build\.NETFramework\v4.5\ a C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5Para obtener más detalles: creación de un proyecto destinado a .NET Framework 4.5 en Visual Studio 2022
Si bien todas las soluciones propuestas, e incluso las aceptadas, funcionarán, ninguna de ellas es el enfoque preferido .
Lo único que debe hacer es agregar una referencia al paquete NuGet de la siguiente manera:
<ItemGroup> <PackageReference Include="microsoft.netframework.referenceassemblies.net45" Version="1.0.2" PrivateAssets="All" /> </ItemGroup> Puede realizar este cambio directamente en *.csproj o a través de la interfaz de usuario del Administrador de paquetes en Visual Studio. Las extensiones de MSBuild en el paquete se encargarán del resto de la magia . No hay scripts para escribir, archivos para copiar o permisos para otorgar. Esto funcionará sin elevación, que sería necesario escribir en %PROGRAMFILES% .
Establecer PrivateAssets="All" hará que el paquete haga referencia solo en tiempo de diseño. No se seleccionará ni incluirá como una dependencia transitiva si su destino también crea un paquete NuGet.
Roslyn Problema 56161: Quitar el requisito del paquete de orientación de .NET 4.5 confirma además que esta es la forma en que se usan los ensamblajes de referencia cuando no está instalado un paquete de orientación. Este enfoque es útil cuando no desea instalar un paquete de orientación o no está disponible, por ejemplo, en un servidor de compilación sin Visual Studio.
Me encontré con el mismo problema después de desinstalar Visual Studio 2019. La compilación funcionó como se esperaba desde Visual Studio y la CLI después de agregar esta referencia de paquete.