3723
در این مطلب استفاده از badge در bootstrap نوشتم اما نیاز داشتم تا این اطلاعات مثلا تعداد پستها از بانک خوانده شود و در منو که درLayout_ نمایش داده شود
برای این کار نیز به استفاده از partialView داشتم تا منو ها را داخل ان بریزم و با استفاده یک ActionResult اطلاعات خوانده شده را با کمک Viewbag به partialView ارسال کنم
برای کنترل این کد را نوشتم
[ChildActionOnly]
public ActionResult MyNav()
{
ViewBag.1Int = db.table1.Where(x => x.Active && x.ArticleId == 2).Count();
ViewBag.2Int = db.table2.Where(x => x.Active && x.ArticleId == 1).Count();
return PartialView("_Nav");
}
و در منو از این کد
<div class="navbar-collapse collapse" id="bs-example-navbar-collapse-1">
@Html.Action("MyNav", "Home")
</div>
در Partialview هم این کد
<ul class="nav navbar-nav navbar-right">
<li>@Html.ActionLink("Home", "Index", "Home")</li>
<li>
<a href="@Url.Action("Index", "Home")">
<span class="badge">@ViewBag.1Int</span>
</a>
</li>
<li>
<a href="@Url.Action("Index", "Home", )">
<span class="badge">@ViewBag.2Int</span>
</a>
</li>
<li>@Html.ActionLink("About", "About", "Home")</li>
</ul>