0
مشکل در صفحه بندی در asp mvc
سلام دوستان .
من میخوام وقتی ک کارب وارد پنل کاربری خودش شد ، خبر هایی ک نوشته بیاد بالا . و اگه مثلا از 5 تا بیشتر شد باقیش بره به صفحه بعد . حالا یه کد نوشتم ولی خطا میده . لطفا راهنمایی کنید . ممنون
public ActionResult MangeNews(int? page) { try { if (Session["Username"] != null) { if (Session["Access"].ToString() == "Admin") { string u = Session["Username"].ToString(); var qMangeNews = (from a in db.Tbl_News orderby a.Date descending select a); var pageNumber = page ?? 1; var onePageOfNews = qMangeNews.ToPagedList(pageNumber, 25); ViewBag.OnePageOfNews = onePageOfNews; return View(onePageOfNews.ToList()); } else { string u = Session["Username"].ToString(); var qMangeNews = (from a in db.Tbl_News where a.Username.Equals(u) orderby a.Date descending select a); var pageNumber = page ?? 1; var onePageOfNews = qMangeNews.ToPagedList(pageNumber, 2); ViewBag.OnePageOfNews = onePageOfNews; return View(onePageOfNews.ToList()); } } else { return RedirectToAction("Register", "Home"); } } catch (Exception) { throw; } }
این قسمتی از کد من در View مزبوطه هستش
<div class="news-user-container"> @{ foreach (var item in Model) { <div class="news"> <div id="search-news-result" class="result"> <a href='@Url.Action("NewsDetail", "Home", new { id=item.ID})'> <img src="~/Content/img/NewsPic/@item.Image" /> <div class="search-body"> <div class="search-title"> @item.Title </div> <div class="search-content"> @item.Text </div> </div> </a> <div class="search-info"> <div class="search-visit"> <div class="visit-icon"> <img src="~/Content/img/eye1.png" /> <div class="visit-count"> @item.Visit </div> </div> </div> <div class="visit-icon"> <img src="~/Content/img/1196px-Facebook_like_thumb.png" /> <div class="visit-count"> @item.Like </div> </div> <div class="visit-icon"> <img src="~/Content/img/Not_facebook_not_like_thumbs_down.png" /> <div class="visit-count"> @item.Dislike </div> </div> <div class="visit-icon"> <img src="~/Content/img/34776-200.png" /> <div class="visit-count"> @U.ConvetToShamsi(@item.Date).ToShortDateString() </div> </div> </div> </div> </div> } } <div style="border:1px solid #000000;"> @Html.PagedListPager((IPagedList)ViewBag.OnePageOfProducts, page => Url.Action("MangeNews", new { page })) </div>
2 پاسخ
0
حل شد . ممنون
1
سلام دوست عزیز، شما تو Controller تو قسمت های مربوط به if دو تا نام مختلف برای مقدار ViewBag دادی، یک بار گفتی OnPageOfProducts و یکی دیگه OnePageOfNews، در صورتی که داخل View گفتی OnePageOfProducts و اگر بخش News تو ساختار if وارد بشه، مقدار OnePageOfProducts مقدارش null هست، شما نام مقداری که داخل ViewBag قرار دادی رو تغییر بدی به چیزی مثل OnePageOfEntity، برای هر دو بخش و داخل View هم اصلاح کن. مشکلت برطرف میشه احتمالاً.