متى تستخدم الداتاريدر؟

السلام عليكم ورحمة الله وبركاته ,الاحظ كثيرا من بعض الأخوة انهم يفرطون فى استخدام الداتاريدر ,بل لعل بعضهم لم يسمع بالداتاست ,او كيفية التعامل معها ,عموما هذه كيفية عمل الداتاريدر
  • الداتاريدر يستخدم فى قراءة البيانات فقط فى اتجاه واحد ,اى لا يمكن عمل تعديل او حذف على البيانات عن طريقه.
  • الداتاريدر يقرأ صفا بصف ,اى اذا كنت ستقرأ من قاعدة البيانات 50 صف ,فانه سيقرأ صفا تلو الآخر ,يأتى بهذا الصف من قاعدة البيانات الى الكود خاصتك ,ثم يعود ليقرأ الصف الذى يليه وانه يحتاج دائما لكائن اتصال طالما هناك بيانات سيقرأها ,اى انه لن يقرأ البيانات كلها مرة واحدة وانه سيحتاج طول عمله لاتصال مفتوح .
  • الداتا ريدر لا يخزن الا صفا واحدا فى الذاكرة ,وبمجرد قراءته لصف جديد فان الصف الذى يسبقه قد انتهى فيما يعرف ب Stream Mode read  اى انك اذا لم تخزن البيانات التى بالداتاريدر يدويا فانها ستنتهى ولن يمكنك استرجاعها الا اذا اعدت عملية القراءة من جديد من تعريف اتصال وتعريف امر استعلام وتعريف داتا ريدر والقراءة من جديد.
وهذا تعريف ميكروسوفت للداتاريدر

You can use the ADO.NET DataReader to retrieve a read-only, forward-only stream of data from a database. Results are returned as the query executes, and are stored in the network buffer on the client until you request them using the Read method of the DataReader. Using the DataReader can increase application performance both by retrieving data as soon as it is available, rather than waiting for the entire results of the query to be returned, and (by default) storing only one row at a time in memory, reducing system overhead.

اذا الداتاريدر مفيد فقط فى حالة عرض البيانات من قاعدة البيانات وعدم وجود حاجة للتعديل عليها ,وان هذه البيانات ليست بالكثيرة لان الداتاريدر يستلزم اتصال مفتوح واذا كانت البيانات كثيرة فقد يحدث لكائن الاتصال Timeout  اى ينتهى مدته,وينفعك الداتاريدر فى حالة حاجتك لتوفير استهلاك الذاكرة حيث ان الداتاريدر يخزن فقط صف واحد .

حول أحمد حسان
Senior IT Specialist @ German Hospital of Alexandria ,Co-Developed Medxpress ,Hospital ERP system ,Microsoft Certified Solution Developer

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s

%d مدونون معجبون بهذه: