ResolveUrl вставляет дополнительную цитату - PullRequest
2 голосов
/ 28 апреля 2011

Я пишу свое первое приложение MVC2. Моя главная страница работает прекрасно, и когда я запускаю ее локально, она работает точно так, как я хочу.

Моя проблема в том, что я развертываю его на сервере, на котором есть целая куча приложений. ResolveUrl, похоже, плохо себя ведет. Я получаю правильный путь, но по какой-то причине что-то вставляет дополнительную цитату или удаляет имеющиеся у меня цитаты.

Вот мой <link>:

<link href='<%= ResolveUrl("~/Content/Site.css") %>' rel="stylesheet" type="text/css"/>

Что выходит (на стороне клиента, после того, как ASP.NET завершил с ним):

<link href=/vcdemo/PhotoManager/Content/Site.css" rel="stylesheet" type="text/css" />

Очевидно, это не то, что я хочу. Когда я исправляю цитаты в Firebug, сайт отображается правильно.

Есть идеи?

Ответы [ 2 ]

2 голосов
/ 28 апреля 2011

Поскольку вы говорите, что это MVC, вы должны попробовать использовать помощника

<link href="<%= Url.Content("~/Content/Site.css") %>" rel="stylesheet" type="text/css"/>
2 голосов
/ 28 апреля 2011

Вы должны использовать помощник Url.Content:

<link href="<%= Url.Content("~/Content/Site.css") %>" rel="stylesheet" type="text/css"/>

Кроме того, поскольку вы используете движок представления WebForms, убедитесь, что вы удалили все атрибуты runat="server", которые могут присутствовать в теге <head>.

ResolveUrl и runat="server" являются устаревшими компонентами и не должны использоваться в приложении ASP.NET MVC.

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