【问题标题】:Set bitmask to CRM AccessRights将位掩码设置为 CRM AccessRights
【发布时间】:2018-01-12 19:12:16
【问题描述】:

我在为 CRM 中的委托人设置访问权限时遇到问题。我必须检索特定团队设置这些权限的实际访问权限。

其实访问权限是这样设置的:

principal.AccessMask = Microsoft.Crm.Sdk.Messages.AccessRights.ReadAccess |                                        Microsoft.Crm.Sdk.Messages.AccessRights.AppendAccess |
Microsoft.Crm.Sdk.Messages.AccessRights.AppendToAccess |
Microsoft.Crm.Sdk.Messages.AccessRights.WriteAccess;

现在我已经检索到作为对象返回的相关访问权限:

object AccessRights  = FetchEngine.GetPrincipalPriviliges(Globals.incomingTeamId, Globals.incomingRecordId);

这个对象包含这样的权限:851991

我现在的问题是我不知道如何通过使用此对象(位掩码)为主体设置 AccessRights。

也许有人可以指出我正确的方向。

非常感谢任何帮助。

亲切的问候 桑德罗

【问题讨论】:

    标签: c# dynamics-crm bitmask access-rights


    【解决方案1】:

    根据: Microsoft 这是一个带有标志属性的枚举。你应该可以直接施放它:

    object rightsObject  = FetchEngine.GetPrincipalPriviliges(Globals.incomingTeamId, Globals.incomingRecordId);
    var rights = (Microsoft.Crm.Sdk.Messages.AccessRights)rightsObject;
    //....
    myPrincipal.AccessMask = rights;
    

    然后用它做任何你想做的事......

    【讨论】:

      猜你喜欢
      • 2023-04-10
      • 2013-08-26
      • 2021-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-15
      相关资源
      最近更新 更多