【发布时间】:2010-02-22 22:15:20
【问题描述】:
出于集成目的,Dynamics CRM 中的用户需要与我们环境的其他部分(基于 ASP.NET 和 SQL Server 2005 构建的多个自定义 Web 应用程序)具有相同的 GUID。但是当我们尝试使用某个 GUID 创建一个新的 Dynamics 用户时,Dynamics 只是忽略它并创建自己的(这种模式让我相信它在内部使用 NEWSEQUENTIALID(),就像用户是通过 UI 创建的一样)。但对于其他类型(例如联系人),Dynamics 可以毫无问题地使用 GUID。
是我做错了什么,还是 Dynamics 在创建新用户时总是忽略 GUID?
CrmService service = GetService();
systemuser newUser = new systemuser();
Key newUserId = new Key();
newUserId.Value = new Guid("D630FA8D-A32F-4a37-BFEF-CE36CBA29009");
// The GUID I would like Dynamics to use
newUser.systemuserid = newUserId;
Lookup bu = new Lookup();
bu.Value = new Guid("16B10365-0E18-DF11-B839-005056B60DD4");
// The correct business unit ID. Nothing to see here.
newUser.businessunitid = bu;
newUser.firstname = "John";
newUser.lastname = "Doe";
newUser.domainname = "DOMAIN\\jdoe";
// Valid AD credentials too. Names changed to protect the innocent.
Guid userId = service.Create(newUser);
Console.WriteLine("User created with GUID " + userId.ToString());
// Dynamics creates the user with a completely different GUID. :-(
编辑:
我现在也问过这个问题on Microsoft's CRM forum。
【问题讨论】:
-
据我所知,您的代码是正确的。明天我会问几个同事。
-
试试 Crm 论坛。
-
@Chris Jones:这个论坛?:social.microsoft.com/Forums/en-US/crm/threads
-
@Chris Jones:这些同事有什么建议吗?
-
不抱歉,我们画了一个空白
标签: dynamics-crm dynamics-crm-4