Ссылки на ресурсы в ASP.NET Core - PullRequest
0 голосов
/ 05 октября 2018

Я начал с проекта ASP.NET MVC Core 2.1.Затем я загрузил стороннюю тему (html / css / javascript / fonts) в папку проекта wwwroot.Когда я открываю файлы .html из wwwroot, все выглядит нормально.

Теперь я хочу «разрезать» тему на части MVC - _Layout.html, представления и т. Д. Когда HTML-содержимое помещается в представления MVC.нужно ли префикс каждой ссылки с "~"?Например, href = "css / colors / orange.css" становится href = "~ / css / colors / orange.css"?Это похоже на большую работу.Есть ли способ сообщить .NET, что относительные пути отключены от wwwroot?

И связанный с этим вопрос - мне не нужно использовать MVC - если бы я использовал проект ASP.NET Core не-MVC, разве это не было бы проблемой?

Спасибо.

1 Ответ

0 голосов
/ 05 октября 2018

Тильда используется для разрешения виртуальных папок.Например, если я помещу свое приложение в виртуальную папку app1 в IIS, то href="~/path" будет переведено в href="/app1/path".Если вы не используете виртуальные папки, вам не нужна тильда.

Дополнительно

href="css/colors/orange.css" относительно папки, в которой вы находитесь.ожидая, что css будет дочерним для текущей папки.Если бы вы добавили начальную косую черту, то это был бы подразумеваемый абсолютный путь с ведущей косой чертой, являющейся корнем.href="/css/colors/orange.css" ожидает, что css будет дочерним элементом вашей корневой папки.Если вы не используете виртуальные папки, как описано выше, вам все равно нужно добавить начальную косую черту, поскольку css всегда будет дочерним элементом root.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...