الاستخدام السليم ل SPWEB من spcontext للحصول على قوائم سحب

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

سؤال

لذلك، بعد حوالي ساعتين في الموضوع، أنا مرتبك تماما. هناك وجهات النظر في جميع أنحاء المكان الخاص بكيفية، ومتى، ولماذا، ولماذا لاستخدام Dispose () على كائنات Spweb وهي تتصل ب SPCONTEXT.

هل يستطيع شخصا واضحا بالنسبة لي في سياق معين؟ أنا أقوم بإنشاء تعريف موقع يسرد يسرد، لذلك افترض أنه يمكنني دائما سحب القوائم من spcontext. لا يوجد خطر من وحدة التحكم أو PowerShell التنفيذ.

يبدو أن القاعدة هي، أبدا، من أي وقت مضى، من أي وقت مضى، من أي وقت مضى، من أي وقت مضى، من أي وقت مضى، من أي وقت مضى، على الإطلاق هل هذه القاعدة تنطبق أيضا على مثيلات المرجع؟ معنى: giveacodicetagpre.

vs giveacodicetagpre.

هل هناك فرق حقيقي أو نوعي هنا؟ لا أحفظ دورة عملية من خلال عدم إنشاء كائن جديد، مما يخدم حقا كصحة نائبة؟

هل سيكون هناك خطر في كتابة كائن وصول إلى البيانات مثل هذا؟ giveacodicetagpre.

منذ القوائم التي أعمل بها مع هي مجموعة صغيرة من 4، يمكن أن يكون لدي كائنات ثابتة لكل منها، ثم لديك أساليب الوصول إلى البيانات ضيقة للغاية وبسيطة والتي ترجع الكائنات التي يتم تعبئةها بواسطة المعلومات التي تم إرجاعها.

(تجاهل عدم وجود الاستعلام واللوائح. أريد أن أركز بحتة على الوصول إلى البيانات)

أخبرني لماذا هذه فكرة سيئة وما هي الطريقة الصحيحة للقيام بذلك.

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

المحلول

أنت صحيح، لا تتخلص أبدا كائنا تم استرجاعه من عقار من Spcontext.

السبب البسيط، لا يمكنك أبدا أن تكون متأكدا من وجود مؤشر ترابط آخر أو عنصر تحكم أو جزء من التعليمات البرمجية الأخرى التي تنفذ بعد التعليمات البرمجية الخاصة بك وتتوقع وجود ذلك بشكل صحيح.

أول مثالين لديك (حيث وضعت واحدة مقابل الآخر) متطابقة بشكل وظيفي، إلا أنك تتخلص من خاصية الويب الخاصة ب SPCONTEXT.CURRENT في الثانية، وهو أمر غير مناسب.

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