احصل على عناصر القائمة حتى لو لم يكن لدى المستخدم حق الوصول إلى هذه العناصر
-
09-12-2019 - |
سؤال
هل هناك طريقة للحصول على العناصر من القائمة حتى لو لم يكن لدى المستخدم الحالي حق الوصول إليها بالفعل؟ SPSecurity.RunWithElevatedPrivileges
لا يبدو أن العمل!
لدي حالة خاصة حيث أحتاج إلى الوصول إلى بعض العناصر من القائمة، وهي العناصر التي تحترم مرشحًا معينًا.يمكن لعامل التصفية إرجاع العناصر التي تخص مستخدمين آخرين ولا يتم إرجاعها.
لكني أحتاجهم لجمع بعض المعلومات وعرضها للمستخدم!لن يرى المستخدم العناصر التي لا يمكنه الوصول إليها، ولكن المعلومات التي أعرضها يجب أن تأخذها في الاعتبار.
هل من الممكن القيام بذلك دون تعيين/إزالة الأذونات برمجياً؟
المحلول
حسنًا، SPSecurity.RunWithElevatedPrivileges
يجب أن تفعل الخدعة.تأكد من إنشاء SPSite/SPWeb جديد ضمن كتلة التعليمات البرمجية المرتفعة:
var siteId = SPContext.Current.Site.ID;
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite site = new SPSite(siteId))
{
//do things on the new site object
}
});
لا تنتمي إلى sharepoint.stackexchange