هل تعطي قراءة البيانات من SPView أداءً أفضل من القراءة من SPList؟

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/116497

  •  29-09-2020
  •  | 
  •  

سؤال

أود أن أفهم ما إذا كانت قراءة البيانات من SPView تعطي وقت استجابة أفضل من القراءة مباشرة من SPList.

في الأساس حصلت على هذا السؤال كما لدي SPlist تحتوي على 30 عمودًا تقريبًا, ، و انا ايضا تحاول قراءة 3 أعمدة فقط في الكود الخاص بي.اكتشفت الآن أنه في SP2013، من الممكن استخدام خاصية SPQuery.ViewFieldsOnly لضمان جلب البيانات من الأعمدة المحددة.لكن منظمتي حاليا استخدام WSS 3.0 (لا يحتوي WSS3.0 على خاصية SPQuery.ViewFieldsOnly).لذلك أفكر في إنشاء طريقة عرض لجلب البيانات.تحتوي قائمة SPList الخاصة بي على العديد من العناصر وأحتاج إلى إعداد تقرير حول حدث النقر على الزر في SPWebPart.لذا كما يمكنك أن تفهم، وقت الاستجابة مهم إلي.أريد توفير أكبر قدر ممكن من وقت التنفيذ عن طريق جلب الحقول المطلوبة فقط من قائمة SPList الخاصة بي.

أنا ألقي نظرة على نموذج التعليمات البرمجية التالي باستخدام SPView:

SPListItemCollection coll = web.Lists["ListName"].GetItems(web.Lists["ListName"].Views["ViewName"]);

باستخدام قائمة سبليست:

SPListItemCollection coll = web.Lists["ListName"].GetItems(web.Lists["ListName"]);

هل سيعطي نموذج SPView وقت استجابة أفضل بافتراض أن لدي عدة صفوف من البيانات في SPList؟أو هل هو نفسه؟

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

المحلول

نعم، استعلم دائمًا عن قائمتك باستخدام CAML وقم بتعيين حقول العرض، فمجرد تدوير مجموعة عناصر القائمة سيعطيك أداءً سيئًا.

إن استدعاء طريقة عرض يعني أنك تستخرج أساسًا CAML من طريقة العرض هذه وتستخدمها لإجراء استعلام.وهذا يعني أنه سيكون لديك أداء رائع.النهج الموصى به.

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