SPUtility.GetPrincipalsInGroup方法抛出传递SPGroup Name时线程被中止错误

时间:2014-01-02 18:18:28

标签: c# multithreading sharepoint-2010

我得到'线程被中止 - 无法评估表达式,因为当我使用'SPUtility.GetPrincipalsInGroup'方法时,代码已经过优化,或者本机框架位于调用堆栈之上'错误。

   bool bReachedMaxCount = false;
    SPPrincipalInfo[] _spPrincInfoColl = SPUtility.GetPrincipalsInGroup(web, groupName, Int32.MaxValue - 1, out bReachedMaxCount);

我们有两个SharePoint组(SPGroup)&我们网站中的Active Directory组。

我正在检查登录用户是否可以访问我在此处作为'groupName'传递的组名。

当我将“域名”作为“groupName”传递时,

代码正常运行,例如(Domain \ usergroup)但传递SharePoint组(SPGroup)名称时引发的错误相同。 这两类人员都至少在网站上拥有“阅读”权限。

我在'try-catch'块中有这个代码,因此我能够捕获该线程中止错误。

出现此错误的原因是什么?我没有得到任何调用堆栈,异常对象的所有其他属性都是null或带有垃圾值。

我的机器上安装了SP2010基础版,VS2012和.Net4.5。

请在此提出建议。谢谢。

- Sagar S。

1 个答案:

答案 0 :(得分:0)

请参阅MSDN Forum

下面的主题

问题是: - SPWeb& SPSite对象未在RunWithElevatedPriviledge方法中创建。