Изменить Navbar в зависимости от URL - PullRequest
2 голосов
/ 25 марта 2019

У меня есть базовое веб-приложение 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, но я всегда думал, что у вас должен быть минимальный код в представлении, оставьте код в контроллере.

У любого есть любоймысли о том, как это можно сделать на стороне сервера в контроллере, а не в поле зрения?

...