gcogco10 Ответов: 1

Systemexception как справиться с этой ошибкой на вашем MVC?


Я разрабатываю приложение MVC, чтобы позволить пользователю регистрироваться/создавать и входить в систему. В моей папке view, под ViewStart.cshtml есть execption ниже, и не знаю, как это исправить, пожалуйста, помогите товарищам "значение не может быть нулевым, имя параметра - virtualPath".

Что я уже пробовал:

<pre>@{
    var controller = HttpContext.Current.Request.RequestContext.RouteData.Values["Controller"].ToString();

    string layout = "";
    if(controller == "Admin")
    {
        Layout = "~/Views/Shared/_Layout.cshtml";

    }else
    {
         Layout = "~/Views/Shared/_MainLayout.cshtml";
    }
    Layout = layout;
 
}

1 Ответов

Рейтинг:
12

TheRealSteveJudge

Если вы отладите свой код, то обнаружите, что вы установили Расположение в зависимости от конфигурации контроллера.
Пока все хорошо.
Затем вы заменяете Расположение с расположение который раньше был установлен в пустую строку.
Пожалуйста, попробуйте это:

@{
    var controller = HttpContext.Current.Request.RequestContext.RouteData.Values["Controller"].ToString();

    if(controller == "Admin")
    {
        Layout = "~/Views/Shared/_Layout.cshtml";

    }else
    {
        Layout = "~/Views/Shared/_Layout.cshtml";
    }
}