Добавьте этот код в метод RegisterBundles класса BundleConfig.Обратите внимание, что я создаю отдельный пакет для каждого CSS, чтобы не отображать каждый CSS клиенту.Я могу выбрать, какой пакет я хочу визуализировать в разделе HEAD общего представления _Layout.cshtml.
bundles.Add(new StyleBundle("~/Content/Ceruleancss").Include(
"~/Content/bootstrapCerulean.min.css",
"~/Content/site.css"));
bundles.Add(new StyleBundle("~/Content/defaultcss").Include(
"~/Content/bootstrap.min.css",
"~/Content/site.css"));
Затем поместите некоторую логику в shared_Layout.cshtml, чтобы отобразить соответствующий пакет.Так как это представление макета срабатывает для каждой страницы, это хорошее место, чтобы поместить его.
Я думаю, что этот подход можно использовать для брендинга, если вы поддерживаете несколько корпусов для своего приложения.Полагаю, его также можно использовать для предоставления пользовательского стиля пользователем.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - Contoso University</title>
@{
if (HttpContext.Current.User.Identity.Name == "MARK")
{
@Styles.Render("~/Content/defaultcss");
}
else
{
@Styles.Render("~/Content/Ceruleancss");
}
}