Это связано с тем, где у вас есть общий вид UserLogin и как вы на него ссылаетесь.
Сначала как:
Вы включаете частичное представление из своего представления _layout,Поэтому именно на каждой странице используется этот макет.
Теперь рассмотрим, что вы здесь делаете.Когда вы нажимаете ссылку «Регистрация», которая должна привести вас к методу регистрации контроллера учетной записи, он выполняет вызов @ Html.Partial:
@Html.Partial("UserControls/UserLogin", new BalanzLab.Models.LogOnModel())
и пытается включить его на текущей странице.Поскольку элемент управления UserLogin фактически находится в папке в каталоге Home views, он не находится в стандартном пути поиска, где будет искать механизм просмотра.Он проверит в каталоге представлений Accounts (текущий контроллер) и проверит каталог Shared views.Так как он не может найти частичное представление ни в одном месте, вы получаете ошибку.(выглядит примерно так)
The partial view 'UserControls/UserLogin' was not found or no view engine
supports the searched locations. The following locations were searched:
~/Views/Account/UserControls/UserLogin.aspx
~/Views/Account/UserControls/UserLogin.ascx
~/Views/Shared/UserControls/UserLogin.aspx
~/Views/Shared/UserControls/UserLogin.ascx
~/Views/Account/UserControls/UserLogin.cshtml
~/Views/Account/UserControls/UserLogin.vbhtml
~/Views/Shared/UserControls/UserLogin.cshtml
~/Views/Shared/UserControls/UserLogin.vbhtml
Самое чистое решение - переместить это частичное представление в каталог общих представлений.Поскольку это часть представления _layout, вам почти нужно сделать это, чтобы эта работа работала, поскольку частичное будет включаться в каждое представление, использующее макет.