การแก้ไข: ข้อผิดพลาดเป็นระยะ ๆ "Underlying เชื่อมต่อถูกปิด" ความเมื่อคุณเรียกใช้บริการเว็บจาก ASP.NET

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 819450 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

อาการ

เมื่อที่คุณเรียกการบริการเว็บ ASP.NET Microsoft จาก ASP.NET อิน application คุณเป็นระยะ ๆ อาจได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
ขีดเส้นใต้การเชื่อมต่อถูกปิด: มีข้อผิดพลาดที่ไม่คาดคิดเกิดขึ้นในการส่ง
สแตกการเรียกจะเหมือนกับข้อความต่อไปนี้:
System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send.
 At System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request) at 
System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request) at 
System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at 
...

การแก้ไข

โปรแกรมแก้ไขด่วนที่ได้รับการสนับสนุนจาก Microsoft พร้อมใช้งานแล้ว แต่มีเป้าหมายเพียงเพื่อการแก้ไขปัญหาที่อธิบายไว้ในบทความนี้เท่านั้น ใช้ hotfix นี้เฉพาะกับระบบต่างๆ ที่พบปัญหานี้เท่านั้น hotfix นี้อาจได้รับการทดสอบเพิ่มเติม ดังนั้น ถ้าคุณไม่ได้รับอย่างจากจากปัญหานี้ เราขอแนะนำให้ คุณรอ service pack รุ่นถัดไปของ Microsoft .NET Framework ซึ่งประกอบด้วยโปรแกรมแก้ไขด่วนนี้

เมื่อต้องการแก้ไขปัญหานี้ทันที ให้ติดต่อฝ่ายบริการสนับสนุนผลิตภัณฑ์ของ Microsoft เพื่อขอรับโปรแกรมแก้ไขด่วน สำหรับรายการทั้งหมดของหมายเลขโทรศัพท์ของบริการการสนับสนุนลูกค้าของ Microsoft และข้อมูลเกี่ยวกับการจ่ายสนับสนุน แวะไปที่เว็บไซต์ต่อไปนี้ของ Microsoft:
http://support.microsoft.com/contactus/?ws=support
หมายเหตุ:ในกรณีพิเศษ อาจมีการยกเว้นค่าใช้จ่ายสำหรับการสนับสนุนทางโทรศัพท์หากผู้เชี่ยวชาญในการให้การสนับสนุนของ Microsoft ระบุว่าการปรับปรุงเฉพาะจะแก้ปัญหาของคุณได้ ค่าใช้จ่ายปกติจะใช้กับการให้การสนับสนุนสำหรับคำตอบเพิ่มเติมและเรื่องที่ไม่สามารถจัดเป็นคำถามเกี่ยวกับการอัพเดทเฉพาะ

โปรแกรมแก้ไขด่วนรุ่นภาษาอังกฤษนี้มีแอตทริบิวต์แฟ้ม (หรือแอตทริบิวต์แฟ้มหลังจากนี้) ซึ่งแสดงในตารางต่อไปนี้ วันที่และเวลาของแฟ้มเหล่านี้จะปรากฏในรูปแบบเวลามาตรฐานสากล (UTC) เมื่อคุณดูข้อมูลแฟ้ม ข้อมูลจะถูกแปลงเป็นเวลาท้องถิ่น เมื่อต้องการค้นหาความแตกต่างระหว่างเวลา UTC กับเวลาท้องถิ่น ใช้โซนเวลาแท็บในนั้นวันที่และเวลารายการใน'แผงควบคุม'
   Date         Time   Version       Size       File name                    Platform
   ----------------------------------------------------------------------------------
   01-May-2003  12:48  1.0.3705.426     20,480  Perfcounter.dll              X86
   01-May-2003  12:48  1.0.3705.426  1,175,552  System.dll                   X86
   01-May-2003  12:48  1.0.3705.426    311,296  System.runtime.remoting.dll  X86
   01-May-2003  12:48  1.0.3705.426    503,808  System.web.services.dll      X86	
โปรแกรมแก้ไขด่วนนี้มีอยู่ ในใน.NET Framework 1.0 Service Pack 3 และใน.NET Framework 1.1 Service Pack 1

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการขอรับ service pack ล่าสุดของ.NET Framework 1.0 คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
318836วิธีการขอรับ service pack ล่าสุดของ.NET Framework 1.0

สถานะ

Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "การใช้งาน"

ข้อมูลเพิ่มเติม

ข้อความแสดงข้อผิดพลาดที่กล่าวไว้ในส่วน "อาการ" อาจเกิดขึ้นสำหรับเหตุผลที่ถูกต้อง ตัวอย่างเช่น ขีดเส้นใต้การเชื่อมต่ออาจได้ปิดด้วยเหตุผลที่เกินกว่าการควบคุมไคลเอนต์ ในสถานการณ์เช่น Framework Microsoft .NET คือ behaving อย่างถูกต้อง

ตัวอย่างเช่น ถ้าเป็นโฮสต์เว็บเซอร์วิสที่เรียกว่าเป็นซอฟต์แวร์ หรือ ในฮาร์ดแวร์ดุลการโหลดระบบที่ประกอบด้วยเซิร์ฟเวอร์ที่สนับสนุน HTTP 1.1 และการเชื่อมต่อแบบ keep-alive การเชื่อมต่ออาจมีจบตามเวลาที่ไคลเอ็นต์พยายามที่จะนำมาใช้การเชื่อมต่อ ถ้าข้อผิดพลาดนี้ยังคงเกิดขึ้นหลังจากที่คุณใช้การแก้ไขนี้ ลองแก้ไขปัญหาต่อไปนี้:
  • การตั้งค่าคอนฟิกเว็บไซต์ที่เป็นโฮสต์เว็บเซอร์วิสไม่ให้ใช้การเชื่อมต่อแบบ keep-alive โดยให้ทำตามขั้นตอนต่อไปนี้::
    1. เปิดคอนโซลการจัดการ Server ข้อมูลทางอินเทอร์เน็ตของ Microsoft (IIS) และค้นหาเว็บเซิร์ฟเวอร์
    2. คลิกการเว็บไซต์แท็บนี้คุณสมบัติหน้าสำหรับเว็บไซต์
    3. คลิกเพื่อยกเลิกเลือกนั้นKeep-Alives ของ HTTP ที่เปิดใช้งานกล่องกาเครื่องหมาย
  • ตรวจสอบว่า ดุลการโหลดฮาร์ดแวร์หรือซอฟต์แวร์ของคุณถูกกำหนดอย่างถูกต้องค่าสำหรับความต้องการให้โปรแกรมประยุกต์ของคุณ
  • ถ้าคุณไม่ได้ควบคุมสภาพแวดล้อมของเซิร์ฟเวอร์ที่โฮสต์บริการเว็บที่คุณกำลังเรียก คุณอาจต้องการปิดการใช้การเชื่อมต่อแบบ keep-alive บนฝั่งไคลเอ็นต์ โดยให้ทำตามขั้นตอนต่อไปนี้::
    1. ตั้งค่านี้KeepAliveคุณสมบัตินี้HttpWebRequestคลาไปเท็จ.
    2. แทนHttpWebRequestวิธีการในแฟ้ม Reference.cs ที่สร้างขึ้น โดย Microsoft Visual Studio .NET สำหรับพร็อกซีไคลเอ็นต์ของเว็บ ต่อไปนี้รหัส overridesHttpWebRequestวิธีการ
      protected override WebRequest GetWebRequest(Uri uri)
       {
       HttpWebRequest webRequest = (HttpWebRequest) base.GetWebRequest(uri);
       
       webRequest.KeepAlive = false;
       
       return webRequest;
       }
      

ข้อมูลอ้างอิง

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการขอรับใน.NET Framework 1.1 Service Pack 1 คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
885055วิธีการขอรับ Microsoft .NET Framework 1.1 Service Pack 1

คุณสมบัติ

หมายเลขบทความ (Article ID): 819450 - รีวิวครั้งสุดท้าย: 14 มกราคม 2554 - Revision: 4.0
ใช้กับ
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.1
Keywords: 
kbhotfixserver kbqfe kbnetframe100presp3fix kbfix kbbug kbmt KB819450 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:819450

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com