Tengo 2 proyectos que necesitan hablar entre ellos. El primero es un proyecto MVC de ASP.NET, que cuando está en producción, tiene una función en la que el usuario puede editar una plantilla html que se almacena en la carpeta wwwroot del proyecto.
El segundo proyecto es una aplicación de consola C # que toma algunos datos del usuario de una base de datos y luego los usa para enviar encuestas a los usuarios por correo electrónico. La plantilla html del primer proyecto necesita ser capturada por esta aplicación de consola para que pueda usarse para enviar estos correos electrónicos. Esperaba usar HtmlAgilityPack para capturar la plantilla de correo electrónico html del primer proyecto cuando esté activo, algo como esto:
var web = new HtmlWeb();
var document = web.Load("www.sitename.com/EmailTemplate");
string text = document.ParsedText;
Pero estoy abierto a otras ideas que podrían funcionar en este caso. Más o menos, creo que solo necesito descubrir cómo acceder a los archivos html estáticos desde la carpeta wwwroot desde una ruta del navegador, si eso es posible. Ah, y estos dos proyectos se ejecutarán en servidores diferentes, por lo que las rutas locales no funcionarán. ¡Gracias!
En gran parte gracias a los comentarios de ADyson, el curso de acción que tiene más sentido en esta situación es crear una pequeña API dentro de la aplicación MVC, que recupere el archivo html, y la aplicación de la consola llamará a esta API para recuperar el html necesario.
Tuve un problema similar y lo hice agregando ~ / al comienzo de las direcciones de mis archivos estáticos en mi _Layout.cshtml. Mis archivos de plantilla y fotos ya no se cargaron en el proyecto, pero se cargó el diseño. De esta manera los archivos también fueron cargados