سؤال

لا يمكنني العثور على إجابة على هذا السؤال أو مثال جيد على كيفية تحقيق ما أحاول القيام به. أنا متأكد من أنه تم نشره أو شرحه في مكان ما ، لكنني أواجه مشكلة في العثور على الحل الدقيق الذي أحتاجه.

أنا أستخدم ActivereCord في Subund 3.0.0.4. عندما أفعل شيئًا مثل

recordset = VehicleModel.Find(x => x.Model.StartsWith(SearchText));

أعود إلى كائنات ilist of queticlemodel (أو أكثر ببساطة مجموعة سجلات) ، هذا جيد حتى أعيد الكثير من السجلات. لا يمكنني أيضًا طلب مجموعة السجلات التي تم إرجاعها (ستقوم شبكتي بذلك بشكل جيد ، لكنني متأكد من أنه سيكون بطيئًا جدًا إذا كان لدي الكثير من السجلات). نظرًا لأن هذا الاكتشاف يعود إلى ilist ، فليس هناك الكثير الذي يمكنني الركض مباشرة ضد هذا (مرة أخرى قد أطل على شيء بسيط لذا من فضلك لا تقتلني).

سؤالي هو هل يمكن لأي شخص أن يشرح كيفية العثور على بيانات مثل أنا أعلاه ، وفرزها والحصول على صفحة من البيانات حيث تكون الصفحة ذات حجم N؟

هل أنا ذاهب لهذا الخطأ؟ هل أنا على وشك أن أكون على المسار الصحيح؟

هل كانت مفيدة؟

المحلول

int currentPage = x
int pageSize = n
recordset = VehicleModel.Find(x => x.Model.StartsWith(SearchText)).Skip(currentPage x PageSize).Take(PageSize);

هذا على افتراض أن PARTPAGE يبدأ في 0.
إذا بدأ صفحة الحالية الخاصة بك في 1 ، فإن ذلك Skip((currentPage - 1) x PageSize)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top