#asp.net-mvc-3
#asp.net-mvc-3
Вопрос:
Я хочу включить два css-файла для моего проекта MVC. Один для администратора, а другой для клиента. Для администратора я использовал общий файл / _Layout.cshtml, куда я добавил следующую строку кода…
<link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" />
На стороне клиента я пытаюсь использовать Site.Основной файл в папке Store, которого нет в общей папке, куда я добавил следующую строку кода между head…
<asp:ContentPlaceHolder ID="head" runat="server">
<link href="~/Content/Style.css"" rel="stylesheet" type="text/css" />
</asp:ContentPlaceHolder>
В мою папку Views под названием Store / index.cshtml я включил следующую строку кода…
@{
<link href="@Url.Content("~/Content/Style.css")" rel="stylesheet"
type="text/css" />
}
но это выдает мне предупреждающее сообщение…
Проверка (переходный XHTML 1.0): элемент ‘link’ не может быть вложен в элемент ‘link’.
Итак, мой 1-й вопрос, возможно ли использовать два css-файла для моего проекта MVC? 2-й, правильно ли я подошел к этому? 3-й вопрос, что мне делать с этим предупреждающим сообщением.
На стороне моего клиента я пытаюсь создать боковую панель на сайте.Мастер-файл, добавляющий следующую строку кода… Но ничего не происходит?
<title></title>
<asp:ContentPlaceHolder ID="head" runat="server">
<link href="~/Content/Style.css"" rel="stylesheet" type="text/css" />
</asp:ContentPlaceHolder>
<!-- adding the following line of code -->
<div id="header">
<div class="title">My Project</div>
</div>
<div id="categories">
Will put something useful here later
</div>
<form id="form1" runat="server">
<div>
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
<div class="title">SPORTS STORE</div>
</asp:ContentPlaceHolder>
</div>
</form>
Я использую VS 2010, ASP.NET MVC 3 на C #. Заранее спасибо, если кто-нибудь может мне здесь помочь?
Ответ №1:
Возможно ли использовать два css-файла для моего проекта MVC?
Определенно
Правильно ли я подошел к этому?
Вы не используете правильный синтаксис в <link>
теге для разрешения URL-адреса вашего CSS-файла. Попробуйте использовать это:
<link href="<%=ResolveUrl("~/") %>Content/Style.css"
rel="stylesheet" type="text/css" />
Что мне делать с этим предупреждающим сообщением?
Возможно, это опечатка, но у вас также есть 2 закрывающих двойных кавычки «». Это предупреждающее сообщение должно исчезнуть, если вы удалите это.
Комментарии:
1. Боюсь, предоставленный вами код не работает… Мне пришлось изменить на …<link href=»@ResolveUrl(«~ /»)> Content / Style.css» rel=»stylesheet» type =»text / css» />. Сообщение об ошибке: имя ‘ResolveUrl’ не существует в текущем контексте. Пожалуйста, не могли бы вы взглянуть на это еще раз
Ответ №2:
Найден лучший способ. Добавлен новый файл layout.cshtml в Views / Shared path. При создании нового index.cshtml через controller вы можете выбрать новый файл layout.cshtml в Razor. в MVC 3 вам не нужно определять Layout = «~/Views / Shared /_LayoutClient.cshtml»; в каждом файле представления. _ViewStart.cstml уже создан для вас. Таким образом, вы можете избежать DRY.