Таблицы стилей ASP.NET MVC - Referencing на основной странице

У меня есть основная страница, которая находится в/Views/Shared. Основные постраничные справочники таблица стилей в /Content папка.

Все хорошо работает, если я ссылаюсь на использование таблицы стилей "../../Content/style.css". Однако мое веб-приложение не находится в корневой папке в нашей продуктивной среде, таким образом, относительный путь не работает.

Я попробовал" <% =ResolveUrl (" ~/content/style.css") %>", который действительно работает в производственном сценарии, но затем разработчик в Visual Studio жалуется на мои классы, являющиеся неправильным (и я не могу предварительно просмотреть страницу с CSS на вкладке дизайна).

Существует ли решение, которое делает эту работу в обеих ситуациях? Я выполнил это в WebForms путем записи серверного кода, которые сбрасывают тег link. Я мог сделать это здесь, но я хотел бы избежать его.

11
задан Peter Mortensen 10 July 2012 в 23:03
поделиться

2 ответа

[11374786-

Попробуйте эту технику - включить свою таблицу стилей как способы. Включите один с фиксированным значением. Вторая ссылка - это «реальная» ссылка, используемая во время выполнения, а с URL.Content () она будет работать, является ли ваше приложение вспомогательным или нет.

<% /* %> 
    <link href="../../Content/Site.css" rel="stylesheet" type="text/css" /> 
<% */ %>

<link href="<%=Url.Content("~/Content/Site.css") %>" rel="stylesheet" 
      type="text/css" />
8
ответ дан 3 December 2019 в 08:29
поделиться

Существует несколько факторов, которые могут повлиять на это.

Во-первых, убедитесь, что у вас есть настройка VIM, чтобы предпочтить хранение локально. Если ваш $ Home находится на местном диске, я склонен ставить это в мой VIMRC (который будет либо в $ Home \ _VIMRC или $ vim \ _vimrc ). Убедитесь, что вы создаете этот каталог, в противном случае VIM будет продолжать использовать один из других каталогов в списке.

set directory^=$HOME/tmp

Это добавляет каталог $ HOME / TMP каталог на начало списка, который VIM проверяет, где размещать SwapFiles.

Во-вторых, сделайте то же самое для файла резервного копирования, который VIM создает. Такая же ситуация, как указана выше, но вариант, который вы менялись, является Backupdir вместо каталога .

В-третьих, убедитесь, что вы отключите плагин MatchParen. Этот плагин новый для Vim 7, поэтому вы можете использовать для использования более старой версии VIM. Это вызывает частую сканирование файла для сопоставления Parens, брекетов и т. Д., Что может резко медленно поборовывать, когда файл находится в доме сети. Опять же, это должно идти в вашем Vimrc.

let g:loaded_matchparen = 1

Если вы хотите временно отключить плагин, вы можете использовать команду : NOMATCHPAREN , а затем : Domautchparen , чтобы повторно включить его позже в этом сеансе VIM.

Наконец, если ни одна из этих помощи Вы всегда можете всегда скопировать файл локально и редактировать его.

-121--2938673-

Это лучшая практика к расширить помощник URL . Это позволяет вам легко вызвать его с вашего представления, и если ваша структура или файлы меняются, вам не нужно делать массивные находки / замены.

public static string Image(this UrlHelper helper, string fileName)  
{  
    return helper.Content("~/Content/Images/" + fileName));  
}  

public static string Stylesheet(this UrlHelper helper, string fileName)  
{  
    return helper.Content("~/Content/Stylesheets/" + fileName);  
}  

public static string Script(this UrlHelper helper, string fileName)  
{  
    return helper.Content("~/Content/Scripts/" + fileName);  
}

   <link href="<%= UrlHelper.Stylesheet("Main.css")%>" rel="stylesheet" 
         type="text/css" />  
6
ответ дан 3 December 2019 в 08:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: