Имам следната страница _Layout.cshtml, която има куп @Html.Action()
извиквания към няколко частични изгледа.
<div class="wrapper">
<div class="header">
<a style="text-decoration:none;" href="/[email protected]("Index", "Home")"><div class="logo"><p>fisharwe</p><span class="greenText float-right">:</span></div></a>
<div class="searchBar">
@Html.Action("Search", "Item")
</div>
<div id="hearGreenBar"></div>
</div>
<div class="pageContent">
@RenderBody()
</div>
<div class="rightColumn">
<div id="help">
<div id="allHelpContent">
<span id="helpIcon"></span> <span id="helpTitle">help</span> <span id="helpArrow"></span>
</div>
</div>
<div id="userPanel">
@if(!Request.IsAuthenticated)
{
<div id="loginForm">@Html.Action("Login", "User")</div>
<div id="registerForm">@Html.Action("Register", "User")</div>
<hr class="greyLine" />
<div id="recentlyViewedItems">
<div id="recentItemsTitle">
<span class="recentItemsIcon"></span><span class="theRecentTitle">Recently Viewed</span>
</div>
</div>
}
else
{
<div id="userInfoSummary">@Html.Action("Summary", "User")</div>
}
</div>
</div>
</div>
В горната част можете да видите извикването @Html.Action("Seach", "Item")
, което изобразява лента за търсене и позволява на потребителите да търсят елементи/категории/подкатегории...и т.н. Сега това работи, но генерира нов проблем! Когато потребителят търси нещо и резултатите се визуализират, частите Login
и Register
в страничната лента (userPanel) показват грешки при проверка, като например „Имейлът не може да бъде празен“. Разбирам, че изгледът се изобразява независимо от това каква част е публикувана обратно, но трябва да има начин това да се предотврати... Трябва ли да се отърва от частичните части и да изобразя всичко в страницата _Layout.cshtml? Но в такъв случай трябва да направя тази страница напечатана, което ще причини още един проблем... И така, какво може да се направи? Отворен съм за всякакви предложения...
Благодаря ти.