gpt4 book ai didi

c# - OrganizationServiceProxy 的 CallerId

转载 作者:太空宇宙 更新时间:2023-11-03 12:05:24 24 4
gpt4 key购买 nike

我正在制作一个外部服务,它将在 Dynamics 365 的 Order 实体中创建一条记录,默认字段(例如:创建者和一些默认字段)将以想要的用户命名创造。

为此,我尝试在 OrganizationServiceProxy 类上使用 CallerId 属性。我正在由实际想要创建记录的 CRM 用户设置 CallerId 属性。但只有当 crm 的用户具有系统管理员角色时,我才能创建记录。

为了更好地理解,添加了一些代码块:

public void Get(Guid userId)
{
var proxy = new OrganizationServiceProxy(new Uri(c.ServiceUri), null, crmCredentials, null);
proxy.EnableProxyTypes();
var context = new OrganizationContext(proxy);

// now setting caller id
proxy.CallerId = userId;

// generating order entity
var t = new SalesOrder();
t.Name = "Demo";
.....
...
.

context.AddObject(t);
context.SaveChanges(); // getting exceptions for normal user on save changes
}

现在我的问题是,如果 crm 的用户没有系统管理员角色的特权,如何克服异常。

最佳答案

验证分配给该“普通用户”的任何安全角色是否具有在“销售”选项卡下的“订单”实体(销售订单)的最低用户级别(橙色饼图)上授予的创建权限。我猜不是。

授予该权限并验证相同的代码执行。

enter image description here

关于c# - OrganizationServiceProxy 的 CallerId,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55324796/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com