пытаюсь добавить два css-файла в мой проект MVC

#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.