มีข้อยกเว้นเกิดขึ้นเมื่อไคลเอนต์ WCF ส่งการร้องขอไปยังบริการ WCF ที่ใช้.NET Framework 3.5 ที่ใช้อยู่ IPv6 สำหรับการผูกข้อมูล

นำไปใช้กับ: Windows Communication Foundation

อาการ


สมมติว่า คุณโฮสต์การ Microsoft .NET Framework 3.5 Service Pack 1 (SP1) -ใช้บริการของ Windows สื่อสารพื้นฐาน (WCF) ใน Internet Information Services (IIS) แล้ว คุณสามารถระบุที่อยู่ IPv6 สำหรับการผูกของปลายทางการบริการ อย่างไรก็ตาม เมื่อไคลเอนต์ WCF ส่งการร้องขอไปยังบริการ คุณได้รับข้อความแสดงข้อผิดพลาดที่คล้ายกับต่อไปนี้ในบันทึกของโปรแกรมประยุกต์:
คำอธิบาย:

ข้อยกเว้นการไม่จัดการ "การผูกโพรโทคอล ' [:: 1]: < หมายเลขพอร์ต >:' ไม่สอดคล้องกับไวยากรณ์สำหรับ 'http' ต่อไปนี้คือ ตัวอย่างของการรวมโพรโทคอลที่ถูกต้อง 'http': ':<หมายเลขพอร์ต >:' "


การติดตามสแต็ค:

ใน System.ServiceModel.AsyncResult.End[TAsyncResult](IAsyncResult result)

ที่ System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End (IAsyncResult ผลลัพธ์)

ใน System.ServiceModel.Activation.HostedHttpRequestAsyncResult.ExecuteSynchronous (บริบท HttpApplication, flowContext บูลีน)

ใน System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()

ที่ System.Web.HttpApplication.ExecuteStep (IExecutionStep ขั้นตอน บูลีน & completedSynchronously)

สาเหตุ


ปัญหานี้เกิดขึ้นเนื่องจาก WCF ถือว่าอักขระเครื่องหมายจุดคู่ (:) เป็นอักขระแบ่งสตริงที่ในที่อยู่ IPv6 เมื่อ WCF แยกวิเคราะห์อยู่รวมกัน

การแก้ปัญหา


เมื่อต้องการแก้ไขปัญหานี้ ติดตั้งล่าสุดพร้อมใช้งานได้รับการสนับสนุนเวอร์ชันของ.NET สำหรับแต่ละการแลกเปลี่ยนสนับสนุนเมทริกซ์

สถานะ


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

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


สำหรับข้อมูลเพิ่มเติมเกี่ยวกับศัพท์เฉพาะในการปรับปรุงซอฟต์แวร์ ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:

824684คำอธิบายของคำศัพท์มาตรฐานที่ใช้เพื่ออธิบายปรับปรุงซอฟต์แวร์ของ Microsoft