CachedDataItemEnumerator الفئة
قم بالتكرار حتى CachedDataItemCollection.
مساحة الاسم: Microsoft.VisualStudio.Tools.Applications
التجميع: Microsoft.VisualStudio.Tools.Applications.ServerDocument (في Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll)
بناء الجملة
'إقرار
<PermissionSetAttribute(SecurityAction.Demand, Name := "FullTrust")> _
Public NotInheritable Class CachedDataItemEnumerator _
Implements IEnumerator(Of CachedDataItem), IDisposable, _
IEnumerator
[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class CachedDataItemEnumerator : IEnumerator<CachedDataItem>,
IDisposable, IEnumerator
ملاحظات
Visual أساسى و C# يحتوي على كل كشف الذي يخفي تعقيد العدادات ( foreachفي C# و For Eachفي Visual أساسى). استخدام العبارة المناسبة للغة التي تستخدمها، بدلاً من معالجة العداد مباشرة.
يمكن استخدام Enumeraإلىrs إلى من قراءة بيانات الموجودة في المجموعة، ولكن لا يمكن استخدام إلى تعديل المجموعة الأساسية.
في بادئ الأمر، تم وضع العدّاد قبل العنصر الأول في المجموعة. Resetأسلوب أيضا إحضار العداد مرة أخرى إلى هذا الموضع. في هذا الموضع، قم بتعيين Currentthrows خاصية إستثناء. ولذلك، يجب استدعاء MoveNextأسلوب التقدم العداد إلى العنصر أول من مجموعة قبل قراءة القيمة Current.
Currentتقوم بإرجاع نفس الكائن حتى أماMoveNextأوResetهو تسمى. MoveNextيقوم بتعيينCurrentإلى العنصر التالي.
إذا MoveNextيمرر نهاية المجموعة، العداد هو توضع بعد العنصر أخير في المجموعة و MoveNextبإرجاع false. عندما العداد هو في ترتيب هو وضع المكالمات اللاحقة إلى MoveNextأيضا بإرجاع false. في حالة استدعاء آخر إلى MoveNextإرجاع false، استدعاء Currentيطرح إستثناء. إلى تعيين Currentإلى العنصر أول في المجموعة مرة أخرى، يمكنك استدعاء Resetمتبوعاً MoveNext.
العدّاد يبقى صالحاً طالما ظلت المجموعة دون تغيير. إذا تم إجراء تغييرات إلى المجموعة، مثل إضافة أو تعديل أو حذف عناصر، العداد هو irrecoverably التحقق من صحتها واستدعاء التالية إلى MoveNextأو Resetيطرح InvalidOperationException. إذا كانت المجموعة هو تاريخ التعديل بين MoveNextو Current، Currentإرجاع العنصر أنه هو تعيين إلى، حتى إذا العداد هو الفعل التحقق من صحتها.
لم يكن العداد حق وصول خاص إلى المجموعة؛ لذلك، تعداد من خلال مجموعة هو إجراء مؤشر ترابط-آمن intrinsically لا. حتى في حالة مجموعة هو متزامنة، عمليات جزئية الأخرى لا تزال تعديل المجموعة، والذي يسبب العداد رمى استثناء. لضمان أمان مؤشر ترابط أثناء قائمة تعداد، يمكنك أما القفل مجموعة أثناء التعداد بأكمله أو catch الاستثناءات الناتجة عن التغييرات التي أجريت بواسطة عمليات جزئية الأخرى.
التسلسل الهيكلي للإرث
System.Object
Microsoft.VisualStudio.Tools.Applications.CachedDataItemEnumerator
أمان العملية الجزئية
يتم تأمين العملية الجزئية لأي عضو عمومي ثابت (مشترك في Visual Basic) من هذا النوع. لن يتم ضمان تأمين العملية الجزئية لأي عضو مثيل.