การแก้ไข: มีแอพลิเคชันที่ใช้ Microsoft .NET Framework 2.0 Service Pack 2 และที่ invokes เรียกการบริการเว็บ asynchronously throws ข้อยกเว้นในคอมพิวเตอร์ที่รัน Windows 7

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

เนื้อหาบนหน้านี้

อาการ

บนคอมพิวเตอร์ที่ใช้ Windows 7 คุณพบอาการต่อไปนี้อย่างน้อยหนึ่ง

อาการ 1

พิจารณาสถานการณ์ต่อไปนี้::
  • คุณเรียกใช้บริการเว็บข้อแบบอะซิงโครนัสที่ใช้ Microsoft .NET Framework 2.0 Service Pack 2 (SP2) บนเซิร์ฟเวอร์
  • กระบวนการHttpWebRequestการดำเนินการแบบอะซิงโครนัสส่งการร้องขอเว็บไปยังบริการเว็บ
  • บริการเว็บ throws ข้อยกเว้น
ในสถานการณ์สมมตินี้HttpWebRequestไม่มีเรียกการดำเนินการแบบอะซิงโครนัสBeginGetResponseเมธอดหรือฟังก์ชันการเรียกกลับ อย่างไรก็ตาม ในHttpWebRequestการดำเนินการแบบอะซิงโครนัสเสร็จสมบูรณ์โดยไม่คาดคิด บริการเว็บแล้วหยุดการตอบสนอง นอกจากนี้ การใช้งาน CPU บนเซิร์ฟเวอร์อาจเพิ่มถึง 100 เปอร์เซ็นต์ และจากนั้น เซิร์ฟเวอร์ไม่ตอบสนอง

อาการ 2

พิจารณาสถานการณ์ต่อไปนี้::
  • คุณเรียกใช้ Microsoft โปรแกรมประยุกต์ที่ใช้ติดตั้ง SP2 2.0 ของ.NET Framework ที่เรียกบริการเว็บ โดยใช้คอมโพเนนต์ไคลเอ็นต์บริการเว็บ ASP.NET ของ Microsoft ตัวอย่างเช่น รหัสแอพลิเคชันถูกสร้างขึ้น โดยการดำเนินการ Wsdl.exe หรือโปรแกรมประยุกต์ที่เรียกนั้นSoapHttpClientProtocolคลาสที่
  • ไคลเอ็นต์ invokes เรียกการบริการเว็บ asynchronously
  • ไคลเอนต์ส่งการร้องขอไปยังเซิร์ฟเวอร์
  • ไคลเอ็นต์ได้รับการตอบสนองของเว็บที่มีความยาวเป็นศูนย์เนื้อหาแล้ว
เมื่อบริการเว็บคุณได้พยายามประมวลผลการตอบสนองการสถานการณ์สมมตินี้ คำSystem.ArgumentNullExceptionข้อยกเว้นมี thrown คุณได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
ค่าไม่สามารถเป็น null
หมายเหตุ:ปัญหานี้ไม่เกิดขึ้นเมื่อไคลเอ็นต์ invokes เรียกการบริการเว็บ synchronously

สาเหตุ

อาการ 1

ปัญหานี้เกิดขึ้นเนื่องจากการจัดการข้อยกเว้น.NET Framework ไม่ควรเกิดขึ้นในกรณีที่การHttpWebRequest.EndGetRequestStreamเมธอด throws ข้อยกเว้นเมื่อมีการยกเว้นว่าประกอบด้วยการตอบสนองจากเซิร์ฟเวอร์

การแก้ไข

ข้อมูลโปรแกรมแก้ไขด่วน

โปรแกรมแก้ไขด่วนที่ได้รับการสนับสนุนจาก Microsoft พร้อมใช้งานแล้ว อย่างไรก็ตาม ได้มีไว้เพื่อแก้ไขปัญหาที่อธิบายในบทความนี้เท่านั้น ใช้ hotfix นี้เฉพาะกับระบบต่างๆ ที่พบปัญหานี้เท่านั้น

เมื่อต้องการดาวน์โหลดโปรแกรมแก้ไขด่วนนี้ แวะไปที่ Microsoft ในการเชื่อมต่อเว็บไซต์ต่อไปนี้:
http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=27977

สถานะ

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

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

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหาที่อธิบายไว้ในส่วน "อาการ 1" คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
973134การแก้ไข: การบริการเว็บหยุดการตอบสนอง และ thrown ข้อยกเว้นเมื่อคุณเรียกใช้ตาม.NET Framework 2.0 S แบบอะซิงโครนัสบริการเว็บ
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหาที่อธิบายไว้ในส่วน "อาการ 2" คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
973136การแก้ไข: ArgumentNullException ข้อยกเว้นข้อผิดพลาดความเมื่อโปรแกรมประยุกต์ที่ใช้.NET Framework 2.0 S พยายามที่จะดำเนินการการตอบสนองการร้องขอบริการเว็บ ASP.NET แบบอะซิงโครนัสกับเนื้อหาของความยาวเป็นศูนย์: "ค่าไม่สามารถเป็น null"
Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.

คุณสมบัติ

หมายเลขบทความ (Article ID): 977020 - รีวิวครั้งสุดท้าย: 16 มกราคม 2554 - Revision: 4.0
ใช้กับ
  • Microsoft .NET Framework 2.0 Service Pack 2 เมื่อใช้กับ:
    • Windows 7 Enterprise
    • Windows 7 Enterprise N
    • Windows 7 Professional
    • Windows 7 Professional N
    • Windows 7 Ultimate
    • Windows 7 Ultimate N
Keywords: 
kbfix kberrmsg kbbug kbexpertiseinter kbsurveynew kbqfe kbmt KB977020 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:977020

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

 

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