سؤال

أعتقد أنني قمت بفرز حدث GridView1_PageIndexChanged الخاص بي وأعتقد أنه يجب أن يعمل

 protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    GridView1.DataSourceID = "lqPackWeights";
    GridView1.PageIndex = e.NewPageIndex;
}

ومع ذلك، عندما أحاول الآن الوصول إلى الصفحة 2 من x، أتلقى ما يلي:

خطأ في الخادم في تطبيق "/ المشروع".يدعم هذا الموفر Skip() فقط عبر الاستعلامات المرتبة التي ترجع الكيانات أو الإسقاطات التي تحتوي على جميع أعمدة الهوية، حيث يكون الاستعلام عبارة عن استعلام جدول واحد (غير مرتبط)، أو يكون مميزًا، أو استثناء، أو متقاطعًا، أو اتحادًا (وليس Concat) عملية.

أنا في حيرة من أمري بسبب هذا، فأنا لا أستخدم التخطي بقدر ما أستطيع رؤيته إلا إذا كنت أعمى؟

أستخدم حاليًا SQL2000، هل هذه مشكلة مرتبطة مباشرة بمثيل SQL هذا؟

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

المحلول

هل تستخدم LINQ إلى SQL؟تبدو المشكلة فريدة بالنسبة لـ SQL Server 2000.راجع مقالات MSDN هذه على استكشاف الأخطاء وإصلاحها (LINQ إلى SQL) و ترجمة مشغل الاستعلام القياسي (LINQ إلى SQL) للمزيد من المعلومات.

يحرر

وقد سبق أن طرحت سؤالاً مشابهاً، انظر: LINQ، وتخطي، وOrderBy، وSQL Server 2000

نصائح أخرى

والتحكم يستخدم تخطي للوصول الى السجلات للصفحة المحددة التي من المفترض أن عرضهم.

في SQL Server يوجد أي الترتيب الافتراضي للاستعلامات (إلا إذا كان الجدول مباشر مع فهرس متفاوت المسافات)، بحيث يكون لديك لتحديد النظام في الاستعلام عن مصدر البيانات. نتيجة الاستعلام يجب أن يكون لها ترتيب معين. فإنه لا معنى لصفحة من خلال نتيجة لذلك إذا تغير ترتيب من صفحة إلى أخرى حتى يتسنى لك الحصول على أكثر أو أقل من ذلك اختيار عشوائي من السجلات من نتيجة لكل صفحة.

وحاليا هو أمر بلدي استعلام LINQ ... انا اعتقد ان هذا ليس هو الطريق إلى الأمام أو أنا سوء الفهم لك؟

وجوه الخاص GetMaterialData (MemberKey سلسلة، MaterialType سلسلة، سلسلة MaterialLevel، عدد كثافة العمليات)     {         ORWeightsDataClassesDataContext ديسيبل = newORWeightsDataClassesDataContext ()؛         الاستعلام فار = db.tblOnlineReportingCOMPLETEWeights                     .حيث (س => x.MaterialLevel == MaterialLevel && x.MaterialText == MaterialType && x.MemberId == MemberKey)                     .OrderByDescending (س => x.ProductPercentage) .Take (عدد)؛         العودة الاستعلام؛     }

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