อาการ
บนคอมพิวเตอร์ที่กำลังเรียกใช้ Windows 7 คุณพบอย่างน้อยหนึ่งอาการดังต่อไปนี้
อาการ 1
พิจารณาสถานการณ์สมมติต่อไปนี้:
-
คุณเรียกใช้บริการเว็บการแบบอะซิงโครนัสที่ใช้ Microsoft .NET Framework 2.0 Service Pack 2 (SP2) บนเซิร์ฟเวอร์
-
การดำเนินการแบบอะซิงโครนัสHttpWebRequestส่งการร้องขอเว็บไปยังบริการบนเว็บ -
บริการบนเว็บแสดงข้อยกเว้น
ในสถานการณ์สมมตินี้ การดำเนินการแบบอะซิงโครนัสHttpWebRequestไม่สามารถเรียกวิธีการBeginGetResponseหรือฟังก์ชันการเรียกกลับ อย่างไรก็ตามHttpWebRequestการดำเนินการแบบอะซิงโครนัสโดยไม่คาดหมายเสร็จสมบูรณ์แล้ว บริการบนเว็บแล้วหยุดการตอบสนอง นอกจากนี้ การใช้งาน CPU บนเซิร์ฟเวอร์อาจเพิ่ม 100 เปอร์เซ็นต์ และจากนั้น เซิร์ฟเวอร์ไม่ตอบสนอง
อาการ 2
พิจารณาสถานการณ์สมมติต่อไปนี้:
-
คุณเรียกใช้โปรแกรมประยุกต์ที่ใช้ SP2 2.0 กรอบงาน.NET ที่เรียกบริการเว็บ โดยใช้คอมโพเนนต์ไคลเอ็นต์บริการ Microsoft ASP.NET เว็บ Microsoft ตัวอย่างเช่น รหัสแอพลิเคชันสร้างขึ้นโดยกระบวนการ Wsdl.exe หรือแอพลิเคชันเรียกใช้คลาสSoapHttpClientProtocol
-
ไคลเอ็นต์เรียกการเรียกบริการเว็บแบบอะซิงโครนัส
-
ไคลเอนต์ส่งการร้องขอไปยังเซิร์ฟเวอร์
-
ไคลเอ็นต์ได้รับการตอบสนองจากเว็บที่มีความยาวเป็นศูนย์เนื้อหาแล้ว
เมื่อบริการเว็บพยายามที่จะประมวลผลการตอบสนองในสถานการณ์สมมตินี้ มีข้อยกเว้นของSystem.ArgumentNullExceptionถูกส่งออก จากนั้น คุณได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
ค่าไม่สามารถเป็น null
หมายเหตุ ปัญหานี้เกิดขึ้นเมื่อไคลเอ็นต์เรียกใช้รายการการเรียกบริการเว็บพร้อมกัน
สาเหตุ
อาการ 1
ปัญหานี้เกิดขึ้นเนื่องจากการจัดการข้อยกเว้น.NET Framework ให้พิจารณากรณีที่เมธอดHttpWebRequest.EndGetRequestStreamแสดงข้อยกเว้นเมื่อข้อยกเว้นที่ประกอบด้วยการตอบสนองจากเซิร์ฟเวอร์
การแก้ปัญหา
ข้อมูลโปรแกรมแก้ไขด่วน
โปรแกรมแก้ไขด่วนจะพร้อมใช้งานได้ในขณะนี้จาก Microsoft อย่างไรก็ตาม มีจุดมุ่งหมายที่จะแก้ไขเฉพาะปัญหาที่บทความนี้อธิบายไว้เท่านั้น นำวิธีนี้ไปใช้กับระบบที่ประสบกับปัญหาที่เฉพาะเจาะจงเท่านั้น
เมื่อต้องการดาวน์โหลดโปรแกรมแก้ไขด่วนนี้ แวะไปที่ Microsoft ในการเชื่อมต่อเว็บไซต์ต่อไปนี้:
http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=27977
สถานะ
Microsoft ยืนยันว่านี่เป็นปัญหาในผลิตภัณฑ์ของ Microsoft ซึ่งแสดงไว้ในส่วน "นำไปใช้กับ"
ข้อมูลเพิ่มเติม
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหาที่อธิบายไว้ในส่วน "อาการ 1" คลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
973134แก้ไข: บริการเว็บหยุดการตอบสนอง และข้อยกเว้นเกิดขึ้นเมื่อคุณเรียกใช้แบบ.NET Framework 2.0 S แบบอะซิงโครนัสบริการเว็บ
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหาที่อธิบายไว้ในส่วน "อาการ 2" คลิกที่หมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
แก้ไข973136 : ArgumentNullException ข้อยกเว้นข้อผิดพลาดเมื่อพยายามประมวลผลตอบสนอง มีความยาวเป็นศูนย์เนื้อหาการร้องขอแบบอะซิงโครนัสของการบริการเว็บ ASP.NET แอพลิเคชันที่ใช้.NET Framework 2.0 S: "ค่าไม่สามารถเป็น null"