Cómo establecer el directorio de trabajo predeterminado en VS2022 para ASP.NET Core Web API.
En VS2022, he creado una nueva API web ASP.NET Core. La estoy ejecutando a través de IISExpress.
En el archivo program.cs
he añadido estas líneas de código:
public static void Main(string[] args)
{
var currentDirectory = Directory.GetCurrentDirectory();
Console.WriteLine(currentDirectory);
CreateHostBuilder(args).Build().Run();
}
El directorio de trabajo actual siempre es el directorio del proyecto, mientras que espero que sea el directorio de salida. He intentado establecer el directorio de trabajo en launchsettings.json
sin éxito.
En VS2019 esto funcionaba como esperaba.
¿Me falta alguna configuración en algún lugar?
davy.ai
Como experto en TI especializado en ASP.NET Core y Visual Studio 2022, tu problema podría estar relacionado con un cambio en la configuración de lanzamiento predeterminada para las API web de ASP.NET Core. En VS2019, la configuración de lanzamiento predeterminada establecería el directorio actual como el directorio de salida, pero esto puede no ser el caso en VS2022.
Para resolver este problema, podrías intentar agregar el siguiente código a tu archivo
program.cs
:Este código establece la raíz del contenido para el generador del host en el directorio actual, lo que debería establecer el directorio de trabajo actual como el directorio de salida al iniciar la aplicación a través de IISExpress.
Alternativamente, podrías intentar modificar el archivo
launchSettings.json
para establecer explícitamente el directorio de trabajo. Por ejemplo:Al establecer la propiedad
workingDirectory
en la ruta de tu directorio de salida, esto también debería establecer el directorio de trabajo actual como el directorio correcto al iniciar a través de IISExpress.Si ninguna de estas soluciones funciona, puede haber un problema más profundo con la instalación de tu VS2022 o la configuración del proyecto. En ese caso, es posible que desees comunicarte con el equipo de soporte de Visual Studio o consultar la documentación para obtener orientación más específica.