مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

djary

عضویت از 1393/10/28

مشکل در صفحه بندی مطالب

  • سه شنبه 28 مهر 1394
  • 16:33
تشکر میکنم

سلام دوستان خسته نباشید

 

بنده توسط ویدیو آموزشی که در همین سایت توسط آقای ایمان مدائنی ساخته شده صفحه اول که حاوی کل مطالب هست رو صفحه بندی کردم و به درستی کار می کند

برای صفحه بندی مطالب بر اساس موضوع من کد رو تغییر دادم اما به  مشکل برخورد کردم

که درواقع تداخل بین ورودی های کنترولر پیش میاد

کنترلر من:


 public class CategoryController : Controller
    {
        // GET: Category
       myEntities db =new myEntities();
     
        public ActionResult Index(int id, int page = 1)
        {
            //Skip
            //Take
            var pg = (from p in db.Posts
                where p.PostGroupsID == id
                select p);

            int skip = (page - 1) * 3;

            int Count = pg.Count();
            ViewBag.PageID = page;
            ViewBag.PageCount = Count / 3;

            var list = pg.OrderBy(p => p.PostID).Skip(skip).Take(3).ToList();
            return View(list);
        }

و در قسمت ویو:

<div class="row">
    @foreach (var item in Model)
    {
        <div class="col-md-4">
            <div class="text-center FontMedad">
                <div class="thumbnail ">
                    <img data-src="holder.js/100%x200" alt="100%x200" src="@item.PostImageTumbnailURL" data-holder-rendered="true" style="height: 200px; width: 100%; display: block;">
                    <div class="caption">
                        <h3>@item.PostTitle</h3>
                        <p>@item.PostContentSummary</p>
                        <p>
                            <a href="#" class="btn btn-primary" role="button">Button</a>
                        </p>
                    </div>
                </div>
            </div>
        </div>
    }

</div>

<div class="row text-center">
    <nav>
        <ul class="pagination">
            <li class="disabled"><a aria-label="Previous" href="#"><span aria-hidden="true">«</span></a></li>
            @for (int i = 1; i <= (ViewBag.PageCount + 1); i++)
            {
                <li class="@(((int) ViewBag.PageID == i) ? "active" : "") FontMedad"><a id="links" href="/category/index/@i">@i<span class="sr-only">(current)</span></a></li>
            }

            <li><a aria-label="Next" href="#"><span aria-hidden="true">»</span></a></li>
        </ul>
    </nav>

</div>

 

حالا مشکل من اینجاست که زمانی روی دکمه های صفحه بندی که به صورت 12344... هست کلیک میکنم به حای اینکه محتوای مربوط به اون صفحه رو بیارد ، GroupID  رو عوض میکنه

 

ممنون میشم راهنمایی بفرمایید 

پاسخ های این پرسش

تعداد پاسخ ها : 7 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • سه شنبه 28 مهر 1394
  • 16:38

شما باید در A  صفحه بندی بعد از index کد گروه و بعد به صورت کوئری استرینگ شماره صفحه را پاس بدهید

کاربر سایت

djary

عضویت از 1393/10/28

  • سه شنبه 28 مهر 1394
  • 17:17

میشه یک مقدار بیشتر توضیح بدید ؟

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • سه شنبه 28 مهر 1394
  • 17:22

id ورودی متد را با viewbag به صفحه بفرستید

مثلا viewbag,.id=id;

سپس قسمت صفحه بندی را به شکل زیر تغییر دهید

  <nav>
        <ul class="pagination">
            <li class="disabled"><a aria-label="Previous" href="#"><span aria-hidden="true">«</span></a></li>
            @for (int i = 1; i <= (ViewBag.PageCount + 1); i++)
            {
                <li class="@(((int) ViewBag.PageID == i) ? "active" : "") FontMedad"><a id="links" href="/category/index/@Viewbag,Id?PageID=@i">@i<span class="sr-only">(current)</span></a></li>
            }
 
            <li><a aria-label="Next" href="#"><span aria-hidden="true">»</span></a></li>
        </ul>
    </nav>

 

کاربر سایت

djary

عضویت از 1393/10/28

  • سه شنبه 28 مهر 1394
  • 17:37

دستشما دردنکنه عالی ، درست شد

کاربر سایت

djary

عضویت از 1393/10/28

  • چهارشنبه 29 مهر 1394
  • 15:43

سلام آقای مدائنی ببخشید مزاحم میشم

من الان به یک مشکل برخوردم

الان دسته بندی و صفحه بندی درست شده مثلا url  به صورت زیر دی میاد

Category/Index/1?PageID=1

Category/Index/1?PageID=2

...

ولی در نمایش فقط همون پیج اول رو نمایش میده

الان همه چی بنظر درست میاد ولی نمی دونم چرا کار نمی کنه

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 29 مهر 1394
  • 16:23

شما باید بنویسید page نه PageID

کاربر سایت

djary

عضویت از 1393/10/28

  • چهارشنبه 29 مهر 1394
  • 16:41

حق با شماست ! اصلا به متغییر ورودی توجه نکرم !

یک دنیا ممنون

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)