C# 将位掩码设置为CRM访问权限
我在CRM中设置主体的访问权限时遇到问题。我必须检索特定团队的实际访问权限并设置这些权限 实际上,访问权限是这样设置的:C# 将位掩码设置为CRM访问权限,c#,dynamics-crm,bitmask,access-rights,C#,Dynamics Crm,Bitmask,Access Rights,我在CRM中设置主体的访问权限时遇到问题。我必须检索特定团队的实际访问权限并设置这些权限 实际上,访问权限是这样设置的: principal.AccessMask = Microsoft.Crm.Sdk.Messages.AccessRights.ReadAccess | Microsoft.Crm.Sdk.Messages.AccessRights.AppendAccess | Microsoft.Crm.Sdk.M
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;
现在,我已检索到作为对象返回的相关accessrights:
object AccessRights = FetchEngine.GetPrincipalPriviliges(Globals.incomingTeamId, Globals.incomingRecordId);
此对象包含如下权利:851991
我现在的问题是,我不知道如何使用这个对象(位掩码)为主体设置访问权限
也许有人能给我指出正确的方向
非常感谢您的帮助
问候
Sandro根据:
它是一个带有Flags属性的枚举。你应该可以直接投下它:
object rightsObject = FetchEngine.GetPrincipalPriviliges(Globals.incomingTeamId, Globals.incomingRecordId);
var rights = (Microsoft.Crm.Sdk.Messages.AccessRights)rightsObject;
//....
myPrincipal.AccessMask = rights;
然后用它做任何你想做的事……根据:
它是一个带有Flags属性的枚举。你应该可以直接投下它:
object rightsObject = FetchEngine.GetPrincipalPriviliges(Globals.incomingTeamId, Globals.incomingRecordId);
var rights = (Microsoft.Crm.Sdk.Messages.AccessRights)rightsObject;
//....
myPrincipal.AccessMask = rights;
那你想用它做什么就做什么