У меня есть базовое веб-приложение MVC, которое меняется из года в год и содержит данные испытаний.URL-адреса (примеры)
2017.applicationdomain.com
2018.applicationdomain.com
test.applicationdomain.com
На моей странице _Layout IВ настоящее время я комментирую и отменяю комментирование раздела NAVBAR непосредственно перед публикацией для каждого URL (как вы можете видеть, цвет навигационной панели и текст бренда изменяются в зависимости от URL).
См. код здесь:
<!--Selector-->
<!--2017-->
@*<nav class="navbar navbar-expand-md navbar-dark" style="min-height:55px;background-color:#035338">
<div class="container">
<a asp-area="" asp-controller="Cashier" asp-action="Index" class="navbar-brand">
2017 Data
</a>*@
<!--Test-->
<nav class="navbar navbar-expand-md navbar-dark" style="min-height:55px;background-color:#221958">
<div class="container">
<a asp-area="" asp-controller="cashier" asp-action="index" class="navbar-brand">
test data
</a>
<!--2018-->
@*<nav class="navbar navbar-expand-md navbar-dark bg-dark" style="min-height:55px;">
<div class="container">
<a asp-area="" asp-controller="Cashier" asp-action="Index" class="navbar-brand">
<img class="img-fluid" src="~/images/CUF_Logo1.png" />
</a>*@
<!--End of Selector-->
Я хочу автоматизировать это, не создавая слишком много накладных расходов на моем виде, что замедлит его.Я знаю, что могу сделать оператор switch для сравнения строк @ Context.Request.Host, но я всегда думал, что у вас должен быть минимальный код в представлении, оставьте код в контроллере.
У любого есть любоймысли о том, как это можно сделать на стороне сервера в контроллере, а не в поле зрения?