อาการ
หลังจากที่คุณติดตั้งการอัปเดตต่อไปนี้อย่างใดอย่างหนึ่งหน้า SharePoint จะไม่แสดงและสร้างข้อความแสดงข้อผิดพลาดเช่นต่อไปนี้:
ข้อผิดพลาดของ web Part: Web Part หรือตัวควบคุมฟอร์มบนเว็บบนหน้านี้ไม่สามารถแสดงหรือนำเข้าได้ ไม่พบชนิดหรือไม่ได้ลงทะเบียนเป็นเซฟ
สาเหตุ
รายการอนุญาตของตัวควบคุม ASP.NET จะถูกบังคับใช้ใน SharePoint ๒๐๑๐และ SharePoint ๒๐๑๓หลังจากที่คุณติดตั้งการอัปเดต ถ้า web part หรือตัวควบคุมบนหน้า SharePoint ไม่ได้ถูกเพิ่มลงในรายการอนุญาตหน้าจะไม่แสดง
การแก้ไข
ถ้าหน้าไม่แสดงอีกต่อไปเนื่องจากมีการใช้ตัวควบคุมที่ไม่ได้อยู่ในรายการ SafeControls ให้ทำตามขั้นตอนต่อไปนี้:
-
ตรวจทานแฟ้มบันทึกของ SharePoint Unified LOG Service (ULS)เพื่อค้นหาแท็ก9s9ayหรือข้อความที่มี "ตัวควบคุมการบล็อกด้วยคุณสมบัติ" ที่ระบุว่าตัวควบคุมถูกบล็อก
-
ระบุชื่อชนิด namespace และแอสเซมบลีที่คาดเดาได้จากข้อความแสดงข้อผิดพลาด
-
ตัวอย่างที่1
ได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
"ชนิด Contoso WebPartControl, Contoso WebParts, เวอร์ชัน = 1.0.0.0, วัฒนธรรม = กลาง, PublicKeyToken = b03f5f8f11d50a3a ไม่สามารถค้นหาได้หรือไม่ได้ลงทะเบียนเป็นปลอดภัย"
พิมพ์ = "WebPartControl" Namespace = "Contoso กำหนดเอง" ชื่อที่รัดกุมของแอสเซมบลี = "Contoso WebParts, เวอร์ชัน = 1.0.0.0, วัฒนธรรม = กลาง, PublicKeyToken = b03f5f8f11d50a3a"
-
ตัวอย่างที่2
ได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
"ตัวควบคุมการบล็อกที่มีการมาร์กอัป traversal คุณสมบัติ [tagName: SharePoint:WebPartControl][propName: propName1][type: typeName1]"
พิมพ์ = "WebPartControl" (ไม่ใช่ "typeName1") คุณสามารถค้นหาข้อมูล namespaces และแอสเซมบลีใน เอกสาร Microsoftได้โดยการทำแบบสอบถามชื่อชนิด
-
-
เพิ่มองค์ประกอบSafeControlsใหม่สำหรับชนิดที่กำหนด namespace และชื่อแอสเซมบลีที่คาดเดาได้ในไฟล์ web.config ภายใต้องค์ประกอบการกำหนดค่า/SharePoint/SafeControlsตามที่อธิบายไว้ในองค์ประกอบ SafeControls (โซลูชัน)แล้วตั้งค่าแอตทริบิวต์ที่ปลอดภัยเป็นTRUE
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบของค่าแอตทริบิวต์ในองค์ประกอบSafeControlsให้อ้างอิงไปยังตารางในขั้นตอนที่12ในการทำเครื่องหมายตัวควบคุมที่ปลอดภัยในตัวออกแบบแพคเกจ.
วิธีแก้ไขปัญหาชั่วคราว
ฉันf คุณมีตัวควบคุมที่ไม่ปลอดภัยมากนักคุณสามารถแก้ไขปัญหานี้ได้โดยทำตามขั้นตอนต่อไปนี้:
-
แก้ไของค์ประกอบSafeModeในไฟล์ web.config ภายใต้องค์ประกอบของการกำหนดค่า/SharePoint
-
เพิ่มแอตทริบิวต์ControlCompatModeที่มีค่าเป็นTrue
ข้อควรระวัง
เราไม่แนะนำให้ใช้วิธีแก้ไขปัญหาชั่วคราวนี้เนื่องจากอนุญาตให้มีการเรียกใช้ตัวควบคุม ASP.net ที่ไม่ปลอดภัย
Content Idea Request: CONTENT IDEA REQUEST 120896
Author: secure
Writer: v-weizhu
Tech Reviewer: qingliu; gli; mswann
Editor: v-jesits