PDA

View Full Version : خطای Timeout expired



m.toosi
شنبه 02 اردیبهشت 1391, 02:13 صبح
سلام
من وقتی سایتمو اجرا می کنم با خطای زیر مواجه میشم

Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
ولی خوب مشکل اینجاست که یکبار خطا میده و یکبار براحتی اجرا میشه
و در ضمن سرعت لود شدنش کمتر شده نسبت به قبل
و همچنین
Session.Timeout = 20
و البته وقتی هم برداشتم بازم فرقی نکرد
یک خطای نامشخص داره ولی از کجاست ؟ نمیدونم؟:متفکر::گریه:
منتظر راهنمایی دوستان هستم

d_derakhshani
شنبه 02 اردیبهشت 1391, 09:53 صبح
همه صفحات که اینطوری نیست؟ از Dynamice Data استفاده کردی؟

rana-writes
شنبه 02 اردیبهشت 1391, 12:05 عصر
منم همچين مشكلي داشتم
مشكل من مربوط به هاست بود كه برطرفش كردن
مخصوصا اينكه ميگين يه بار مشكل هست و يه بار نيست و سرعت لود صفحه ها كم شده، احتمالا مشكل از هاسته.

موفق باشين

m.toosi
شنبه 02 اردیبهشت 1391, 19:05 عصر
سلام ممنون از لطفتون
مشکلم برطرف شد
اشکال از web config بود و طریق اتصال به دیتابیسم در <connectionStrings> بود
البته اینجاش جالب بود که کند شده بود وگاهی اجرا میشد و گاهی هم نمیشد

hamid_shrk
شنبه 02 اردیبهشت 1391, 20:04 عصر
دوست عزیز دقت کنید که بعد از بازکردن کانکشنتون حتما اون رو Dispose() کنید.

m.toosi
شنبه 02 اردیبهشت 1391, 20:21 عصر
ممنون از لطفت هنوز یادته ازت سوال کرده بودم :قلب:
ولی استفاده نکردم چون درست شده بود
میشه لطف کنی وبگی دلیل استفاده کردن از Dispose چیه؟

ممنونن از لطفت

hamid_shrk
شنبه 02 اردیبهشت 1391, 20:28 عصر
دلیلش اینه که Connection رو آزاد میکنه.
اگه اینکارو نکنید هنگامی که تعداد زیادی کاربر به سایتتون وصل میشن کانکشن هاشون باقی میمونه و سایتتون به دیتابیس نمیتونه وصل بشه که البته میتونید connection pool رو بالا ببرید ولی خوب رسما اینکار دیگه خیلی بیخوده.

d_derakhshani
یک شنبه 03 اردیبهشت 1391, 10:26 صبح
می تونید جای Dispose از close هم استفاده کنید. این دو در SqlConnection کاملا مطابق هم هستند. فقط با یک تفاوت: اگه کانکشن Dispose شه دیگه نمیشه با همون شی Open کرد و باید دوباره new بشه(منابع رو به صورت دستی آزاد می کنه). اما با متد Close میشه دوباره کانکشن رو باز کرد(این به معنی این نیست که Close کانکشن رو به pool بر نمی گردونه. بلکه به این معنی هست اکه Dispose اجازه دسترسی به شی رو از شما می گیره.)

neda555
یک شنبه 03 اردیبهشت 1391, 11:09 صبح
می تونید جای Dispose از close هم استفاده کنید. این دو در SqlConnection کاملا مطابق هم هستند. فقط با یک تفاوت: اگه کانکشن Dispose شه دیگه نمیشه با همون شی Open کرد و باید دوباره new بشه(منابع رو به صورت دستی آزاد می کنه). اما با متد Close میشه دوباره کانکشن رو باز کرد(این به معنی این نیست که Close کانکشن رو به pool بر نمی گردونه. بلکه به این معنی هست اکه Dispose اجازه دسترسی به شی رو از شما می گیره.)
کاربرد مفید dispose چیه؟یه مثال لطفا

d_derakhshani
یک شنبه 03 اردیبهشت 1391, 11:35 صبح
در SqlConnection کاربرد خاصی نیست جز اینکه زودتر منابع شی رو آزاد کنید. قبل از اینکه بلاک مربوطه تموم شه. اما خود Dispose چه کاربردی داره؟ این تاپیک جاش نیست. چون موضع تاپیک چیز دیگه ای است.