В веб-приложении MVC 5, которое я разрабатываю, для повышения эффективности я очищаю механизмы просмотра и добавляю только RazorViewEngine
в Global.asax.cs
, используя ViewEngines.Engines.Clear();
, и он разбивает стили в карте сайта mvc сухариClearing View Двигатели в MVC разрывают стили sitemap breadcrumb
Перед
После
Моей карта сайт частичного вид (SiteMapPathHelperModel.cshtml) выглядит
@model MvcSiteMapProvider.Web.Html.Models.SiteMapPathHelperModel
@using System.Web.Mvc.Html
@using System.Linq
@using MvcSiteMapProvider.Web.Html.Models
<ol class="breadcrumb">
@foreach (var node in Model)
{
if (node == Model.Last())
{
<li class="active">
<strong>@Html.DisplayFor(m => node)</strong>
</li>
}
else
{
<li>
@if (node.Title == "Home")
{
<a href="/"><i class="fa fa-lg fa-home"></i></a>
}
else
{
@Html.DisplayFor(m => node)
}
</li>
}
}
</ol>
Как-то, кажется, падает обратно в другую реализацию, чем частичные соображения> общие> шаблонов отображения
В чем может быть причина?
Редактировать
я пропустил некоторые жизненно информацию здесь, еще DEV сделал это в нижней части Application_Start()
ViewEngines.Engines.Add(new RazorViewEngine
{
PartialViewLocationFormats = new string[]
{
"~/Areas/Shared/{0}.cshtml",
}
});
Я не могу воспроизвести этот вопрос на MVC 5 при вызове 'ViewEngines.Engines.Clear(); ', за которым следует' ViewEngines.Engines.Add (новый RazorViewEngine()); '. Пожалуйста, покажите код, который вы используете, чтобы повторить это. Обратите внимание, что внутренний механизм просмотра 'MvcSiteMapProvider' предназначен для резервного копирования, когда у вас нет шаблона в папке'/Views/Shared/DisplayTemplates'. – NightOwl888
Кроме того, было бы полезно увидеть выходной HTML - это стили, которые не выводятся в HTML, или это стили разбиты? – NightOwl888
отлично работает, когда ViewEngines не очищаются, я также проверил визуализированный html, который, как представляется, не использует частичное, когда ViewEngines очищаются, поскольку структура html отличается от частичной. пока не повезло. – Ahsan