• 1405/03/04

تمرین جلسه 83 _ صفحه بندی :

using Linq_project;

var students = new List<Student>...;


var count = (from st in students
            select st).Count();

Console.WriteLine($"Page Count Is : {count/6}");
Console.WriteLine("Please Enter Page Numbre : ");
string input = Console.ReadLine();
int pageNumber = Convert.ToInt32(input);

var take = (from st in students
            select st).Take(6);

var skip = (from st in students
            where pageNumber>1
            select st).Skip(pageNumber*6-6);

if (pageNumber == 1)
{
    var page_1 = (from st in students
                select st).Take(6);
    foreach (var st in page_1)
    {
        Console.WriteLine($"Id is : {st.Id} , Name is : {st.Name} , Family is : {st.Family} , Age is : {st.Age}");
    }
}


take = skip;

var take_2 = (from st in take
              select st).Take(6);

foreach(var st in take_2)
{
    Console.WriteLine($"Id is : {st.Id} , Name is : {st.Name} , Family is : {st.Family} , Age is : {st.Age}");
}

سلام و وقت بخیر . تمرین صفحه بندی دیتاها خدمت شما . میدونم کد هام خیلی استاندارد نیست و به اصلاح کثیفه هدفم بیشتر این بود که نتیجه درست رو بگیرم .

 

یک نکته بگم وقتی کاربر عدد یک رو وارد میکنه 6 تا دیتا اول باید نمایش داده بشه . وقتی کاربر عدد 2 رو وارد میکنه 6 تای دوم یعنی از 7 تا 12 . میخوام بگم صرفا نباید ضرب در 6 کنیم چون اگر ضرب در 6 کنیم وقتی کاربر عدد 2 رو وارد میکنه از 12 تا 18 رو نشون میده بخاطر همین یه منهای 6 هم کردم.