อาการ
พิจารณาสถานการณ์ต่อไปนี้:
-
คุณใช้ Microsoft SQL Server ๒๐๑๒หรือบริการข้อมูลหลักของ SQL Server ๒๐๑๔ (MDS)
-
คุณมีแอตทริบิวต์ที่มีค่าที่มีอักขระพิเศษ (เช่นสัญลักษณ์ "+") ในเอนทิตี
-
คุณกำหนดกฎทางธุรกิจบนเอนทิตีนี้และกำหนดค่าให้ส่งการแจ้งเตือนทางอีเมลเมื่อการตรวจสอบความถูกต้องล้มเหลว
ในสถานการณ์สมมตินี้ลิงก์ในอีเมลการแจ้งเตือนจะใช้งานไม่ได้และไม่ถูกต้อง ตัวอย่างเช่นสัญลักษณ์ "+" จะถูกแทนที่ด้วย "% 2b" ที่ไม่ถูกต้อง ดังนั้นลิงก์ไม่สามารถส่งตรงไปยังระเบียนที่คาดไว้ภายใน MDS ได้
สาเหตุ
ปัญหานี้เกิดขึ้นเนื่องจากเมื่อ Silverlight เรียกค่ารหัสจากคอลเลกชัน QueryString การเรียกใช้การ UrlDecode อย่างไรก็ตามค่าในคอลเลกชัน QueryString ได้ถูกถอดโดย MDS แล้ว ดังนั้น UrlDecode ที่ไม่จำเป็นจะถูกดำเนินการ
การแก้ไข
ปัญหานี้ได้รับการแก้ไขแล้วในการอัปเดตที่สะสมของ SQL Server ครั้งแรก
การอัปเดตที่สะสม1สำหรับ SQL Server ๒๐๑๔ SP1 /en-us/help/3067839
การอัปเดตที่สะสม8สำหรับ SQL Server ๒๐๑๔ /en-us/help/3067836
การอัปเดตที่สะสม5สำหรับ SQL Server ๒๐๑๒ SP2 /en-us/help/3037255
การอัปเดตที่สะสมใหม่แต่ละรายการสำหรับ SQL Server ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมดและการแก้ไขการรักษาความปลอดภัยทั้งหมดที่รวมอยู่ในการอัปเดตที่สะสมก่อนหน้านี้ ตรวจสอบการอัปเดตที่สะสมล่าสุดสำหรับ SQL Server:
สถานะ
Microsoft ยืนยันว่าปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งมีการระบุไว้ในส่วน "นำไปใช้กับ"