Приложение ASP.Net MVC указывает на локальный хост вместо каталога приложения - PullRequest
0 голосов
/ 12 ноября 2009

Привет, я развертываю приложение MVC на IIS на Win7. Я развернул его на localhost / appPortal. appPortal настраивается как приложение, а не как виртуальный каталог. К сожалению, корень приложения в MVC отображается на localhost вместо localhost / appPortal. Это нарушает все мои ссылки на скрипты, CSS, изображения и т. Д. Может кто-нибудь помочь мне понять, почему это происходит и как это исправить?

Ответы [ 3 ]

2 голосов
/ 12 ноября 2009

Было бы интересно получить дополнительную информацию о том, как вы создаете ссылки.

Первое, что нужно проверить, это то, что приложение правильно создано в IIS, что, я полагаю, так и есть. (Если нет, вы, вероятно, получите ошибки из вложенных файлов web.config)

Во-вторых, URL должны создаваться так, а не напрямую:

<%= Url.Content("~/yourpath/yourfile.css") %>

Может быть, этот вопрос о Url.Content показывает вам больше вариантов. Также проверьте документацию MSDN по UrlHelper и HtmlHelper .

0 голосов
/ 12 ноября 2009

Вы также можете просто использовать тип документа HTML 5 и тег <base>.

Да, я только что это сделал.

Это, вероятно, не вариант, поэтому вам следует использовать помощник по URL, как сказал Марк.

0 голосов
/ 12 ноября 2009

Лучшее решение - не использовать в приложении корневые ссылки (начинающиеся с /). Вы можете использовать ~ / как ссылку на корень приложения. Я использую такие вещи

<script src="<%=ResolveClientUrl("~/script/something.js") %>"

разрешить в / scripts. Это делает ваше приложение более переносимым.

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