سؤال

وأنا أعمل على مشروع لشخص آخر أن يجعل الاستخدام المكثف للtableAdapters. الموقع يعمل ولكن وتضيف العادية إدخال في سجل الأحداث:

<اقتباس فقرة>   

و"اكسيكوتيريدير يتطلب انفتاحا و   الاتصال المتاحة. اتصال ل   الوضع الحالي يتم الاتصال. "

والموقع لا بطرح استثناء على الرغم ما لم يكن هناك ارتفاع حركة المرور (5+ الطلبات في الثانية) الاستثناء هو نفسه، لافتا إلى هذا الخط من التعليمات البرمجية:

this.Adapter.Fill(dataTable);
<اقتباس فقرة>   

وتتبع المكدس: في   System.Data.SqlClient.SqlConnection.GetOpenConnection (سلسلة   طريقة) في   System.Data.SqlClient.SqlConnection.ValidateConnectionForExecute (سلسلة   طريقة والقيادة SqlCommand)

وكيف يمكنني التوقف عن هذا الخطأ؟ شكرا.

وتبين كنت تحصل على سوى نصف الصورة، الخطأ، عندما سوف رمي خطأ هو:

<اقتباس فقرة>   

وقال "هناك بالفعل DataReader مفتوح   يرتبط مع هذه القيادة التي   يجب أن يتم إغلاقه أولا ".

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

المحلول

وأود أن أقول ربما كنت تستخدم نفس الاتصال لأغراض متعددة واحد منهم هو الحصول على أغلقت موضوع آخر.

وأود أن أوصى لإضافة بعض التتبع لمعرفة ما يجري. من الصعب أن تصحيح هذا النوع من الأخطاء، وتلك التي تحصل فقط عندما تكون في إنتاج :(

نصائح أخرى

إذا يبدو أنك قد تجاوزت العدد المسموح به من الاتصالات المفتوحة إلى قاعدة البيانات الخاصة بك. هذا يمكن تعيين في سلسلة الاتصال عن طريق إعطاء قيم الحجم مين بركة وماكس بركة القيم الحجم. أعتقد أن الإعدادات الافتراضية هي 0 لمين حجم تجمع و 100 لماكس حجم تجمع، ولكن لست متأكدا.

وحاول تغييرها ومعرفة ما اذا كان يساعد.

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