#c# #asp.net-mvc #asp.net-core-mvc #razor-pages
#c# #asp.net-mvc #asp.net-core-mvc #razor-страницы
Вопрос:
Я новичок.Сеть и использование.Net core для создания простого веб-приложения. На данный момент он использует страницы Razor для просмотра и его статического содержимого.
Вот структура проекта,
Я могу использовать только файлы .cshtml для навигации, например
https://localhost:44391/Home //goes to Home.cshtml
https://localhost:44391/About //goes to About.cshtml
У меня есть статический HTML-файл и некоторые необходимые ресурсы, помещенные во вложенную папку с именем «Off» в папке Pages.
https://localhost:44391/Off
Я знаю, я могу использовать саму страницу Razor. Но здесь я загрузил некоторую стороннюю интеграцию, и она предоставляет это, и попросил меня получить доступ к той же иерархии, что и html-страница.
Могу ли я узнать, возможно ли это?
Комментарии:
1. Вы спрашиваете, как перейти к этому конкретному HTML-файлу?
2. Если содержимое в Off является статическим, вы хотите отложить его в
wwwroot
папке.
Ответ №1:
У меня есть статический HTML-файл и некоторые необходимые ресурсы, помещенные во вложенную папку с именем «Off» в папке Pages.
https://localhost:44391/Off
Вы можете попробовать вызвать app.UseFileServer
, чтобы включить обслуживание статических файлов.
//...
app.UseStaticFiles();
app.UseFileServer(new FileServerOptions
{
FileProvider = new PhysicalFileProvider(
Path.Combine(env.ContentRootPath, "Pages/Off")),
RequestPath = "/Off"
});
app.UseRouting();
//...
Результат теста
Ответ №2:
Да, это возможно, вы можете попробовать включить содержимое своей HTML-страницы в качестве частичного представления:
@Html.Partial("~/Pages/Off/index")
Это в том случае, если вы просто хотите показать содержимое HTML-страницы на своем веб-сайте MVC. Если для этой сторонней интеграции требуется что-то особенное, нам потребуется дополнительное объяснение сценария.