Tengo algunos problemas para crear un proyecto destinado a .NET Framework 4.8. Estoy usando Visual Studio 2019, actualizado a la versión 16.2.5. También instalé .NET Framework 4.8 Developer Pack . Desde el instalador de Visual Studio, no veo ninguna opción para habilitar las herramientas de desarrollo 4.8 similares a 4.7 .
Solo pensé en publicar mis problemas, ya que también encontré esto con el proyecto VS2019 Winforms, y no pude apuntar a nada más que .Net 5 y Core 3.1. Resulta que hay 2 tipos de Winforms, Winforms App y Winforms App (.Net Framework). El primero no podrá apuntar al otro .net framework. Este último es capaz. ¡Eh! Cosas simples que no son obvias.
Instalé el marco 4.8 a través de VS en los marcos de destino. No se podía seleccionar allí, en las propiedades del proyecto, como era de esperar.
Terminé teniendo que volver a crear mi proyecto VS. Para la plantilla, encontré el marco 4.8 a través de la búsqueda de plantillas en la creación de proyectos usando los parámetros de búsqueda de la consola C# del marco. Luego copié mis archivos a la nueva carpeta del proyecto y los agregué como elementos existentes a través de la herramienta de solución.
Encontré una solución: si quiero que Visual Studio Community 2019 apunte a .NET 4.8, puedo crear algunos proyectos simples usando Visual Studio Express 2013. En la configuración del proyecto, cambio el .NET requerido (hasta 4.8) y guardo. Después de eso, puede abrir ese proyecto con Visual Studio Community 2019 y verá en la configuración del proyecto todas las opciones de destino de .NET hasta 4.8.
Sin embargo, si desea jugar con .NET Core 3.1 y .NET 5.0, debe crear un nuevo proyecto desde Visual Studio Community 2019.
Para cualquiera que tenga este problema en VS 2019 Community edition. El problema en mi caso fue la confusión sobre qué plantilla seleccionar. Las plantillas para .NET Framework están entre paréntesis y más abajo en la lista (en mi caso no se muestran en absoluto hasta que hice clic en el enlace "borrar" junto al cuadro de búsqueda).
Ejemplos:
Aplicación de consola (.NET Framework) Aplicación web ASP.NET (.NET Framework) Biblioteca de clases (.NET Framework) etc.
Ninguna solución anterior resolvió mi problema. La nota en https://docs.microsoft.com/en-us/visualstudio/ide/step-1-create-a-windows-forms-application-project?view=vs-2019 punto 2 nota ayudó:
Nota
Si no ve la plantilla de la aplicación Windows Forms (.NET Framework), puede instalarla desde la ventana Crear un nuevo proyecto. En el ¿No encuentras lo que buscas? mensaje, elija el enlace Instalar más herramientas y funciones.
El enlace 'Instalar más herramientas y características' del mensaje 'No encuentro lo que busca' en la ventana 'Crear nuevo proyecto'
A continuación, en el instalador de Visual Studio, elija la carga de trabajo de desarrollo de escritorio de .NET .
Después de eso, elija el botón Modificar en el instalador de Visual Studio. Es posible que se le solicite que guarde su trabajo; si es así, hazlo. A continuación, elija Continuar para instalar la carga de trabajo.
Aunque siempre compruebo esto cuando instalo VS, faltaba. Y faltaban los tepmlates a pesar de que tenía instalados los paquetes de orientación correctos.
Ninguna de las soluciones anteriores solucionó mis problemas, pero la de Oak_3260548 me indicó la dirección correcta.
En Visual Studio Installer, al que se puede acceder haciendo clic en " Herramientas/Obtener herramientas y funciones " en el menú superior, seleccioné la pestaña " Componente individual " y marqué " Paquete de destino de .Net Framework 4.8 ". Eso lo arregló para mí.
C:\Archivos de programa\Microsoft Visual Studio\2022\Community\Msbuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets
<!-- <GetReferenceAssemblyPaths Condition="'$(TargetFrameworkMoniker)' != '' and ('$(_TargetFrameworkDirectories)' == '' or '$(_FullFrameworkReferenceAssemblyPaths)' == '')" TargetFrameworkMoniker="$(TargetFrameworkMoniker)" RootPath="$(TargetFrameworkRootPath)" TargetFrameworkFallbackSearchPaths="$(TargetFrameworkFallbackSearchPaths)" BypassFrameworkInstallChecks="$(BypassFrameworkInstallChecks)" > <Output TaskParameter="ReferenceAssemblyPaths" PropertyName="_TargetFrameworkDirectories"/> <Output TaskParameter="FullFrameworkReferenceAssemblyPaths" PropertyName="_FullFrameworkReferenceAssemblyPaths"/> <Output TaskParameter="TargetFrameworkMonikerDisplayName" PropertyName="TargetFrameworkMonikerDisplayName" Condition="'$(TargetFrameworkMonikerDisplayName)' == ''"/> </GetReferenceAssemblyPaths> -->
Acabo de tener un problema similar con Visual Studio 2019 Community Edition: solo se mostraron las versiones de .Net Core.
Edité el archivo .csproj
manualmente. Cambié la línea con la propiedad TargetFramework
a
<TargetFramework>net48</TargetFramework>
Curiosamente, ahora también aparecen todas las demás versiones.
Este hilo de Visual Studio tenía todas las respuestas que estaba buscando. .NET Framework 4.8 Developer Pack incluye tanto el SDK como el Targeting Pack. Después de instalar esto y reiniciar Visual Studio, ahora puedo ver .NET Framework 4.8 como una opción de orientación para proyectos de Visual Studio. No debería necesitar realizar ningún paso del instalador de Visual Studio.
También mencionado en el hilo anterior, .NET Framework 4.8 se incluirá en el proceso de instalación de Visual Studio a partir de 16.3 ( actualmente se incluye en 16.3 Preview 2 ).