Добрый день,
Есть небольшой REST API на Asp.net Core.
На старте он генерит небольшой json с линками на ресурсы через
app.UseStaticFiles(new StaticFileOptions
{
FileProvider = fileProvider,
RequestPath = requestPath
});
Как сгенерировать линки на статичные файлы?
Те я хочу на выход
https://localhost:7123/test/index.png
Ответ на вопрос дан
тут и много еще где... и выглядит как-то так:
public class YourController : Controller
{
private readonly IWebHostEnvironment _webHostEnvironment;
public YourController (IWebHostEnvironment webHostEnvironment)
{
_webHostEnvironment= webHostEnvironment;
}
public IActionResult Index()
{
string webRootPath = _webHostEnvironment.WebRootPath;
string contentRootPath = _webHostEnvironment.ContentRootPath;
string path ="";
path = Path.Combine(webRootPath , "CSS");
//or path = Path.Combine(contentRootPath , "wwwroot" ,"CSS" );
return View();
}
}
В моем случает это WebApi и WebRootPath всегда будет null, поэтому надо использовать ContentRootPath.
Проблема в том, что когда я запускаю проект _webHostEnvironment выглядит так:
Те я получаю правильный пусть, но это локальный пусть к папке проекта: C:\Users\много_букв\index.png
Как получить URL типа:
https://localhost:7123/test/index.png
P.S.: понимаю что очень просто и где-то туплю :(