أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

إن المستعرض الذي تستخدمه غير معتمد

إنك تحتاج إلى تحديث المستعرض لاستخدام الموقع.

التحديث إلى أحدث إصدار من Internet Explorer

المشكلة: يحدث ThreadAbortException إذا كنت تستخدم Response.End أو Response.Redirect أو Server.Transfer

الأعراض
إذا كنت تستخدم أسلوب Response.End، أو Response.Redirect, أو Server.Transfer، يحدث استثناء ThreadAbortException. يمكنك استخدام عبارة try-catch لتصفية هذا الاستثناء.
السبب
تنهي وسيلة Response.End تنفيذ الصفحة وتبدل التنفيذ إلى حدث Application_EndRequest في مسار الحدث الخاص بالتطبيق. السطر من التعليمات البرمجية الذي يتبع Response.End لم يتم تنفيذه.

تحدث هذه المشكلة في وسائل Response.Redirect و Server.Transfer بسبب استدعاء كلا الأسلوبين لـResponse.End داخليا.
الحل
للتغلب على هذه المشكلة، اتبع إحدى الطرق التالية:
  • لـResponse.End, استدعِ وسيلة HttpContext.Current.ApplicationInstance.CompleteRequest بدلًا من Response.End لاجتياز تنفيذ التعليمة البرمجية لحدث Application_EndRequest.
  • لـ Response.Redirect, استخدم طريقة تحميل زائد، Response.Redirect(String url, bool endResponse) التي تجتاز خطأ لمعلمة endResponse لاجتياز الاستدعاد الداخلي لـ Response.End. على سبيل المثال:
      Response.Redirect ("nextpage.aspx", false);						
    إذا كنت تستخدم هذا الحل البديل، فالتعليمات البرمجية التي تتبع Response.Redirect منفذة.
  • لـ Server.Transfer، استخدم وسيلة Server.Execute بدلاً من ذلك.
تصريح
هذا السلوك مرتبط بالتصميم.
خصائص

رقم الموضوع: 312629 - آخر مراجعة: 08/30/2013 13:37:00 - المراجعة: 2.0

  • Microsoft ASP.NET 4.5
  • Microsoft ASP.NET 4.0
  • Microsoft ASP.NET 3.5
  • Microsoft ASP.NET 2.0
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • kbexcepthandling kbprb KB312629
تعليقات