我在哪里可以找到用户实体的详细信息,以及如何获得它的实例

本文关键字:何获得 实例 详细信息 实体 在哪里 用户 | 更新日期: 2023-09-27 18:09:01

你好。

我们这里有一个自定义解决方案,供应商使用Microsoft Dynamics;作为基础。他们创建了一个自定义实体(contactrelationships(,实体的一个字段/属性叫做"ownerid"。我查看了GUI/网站这个属性似乎只是用户实体中的一个用户。

我已经搜索过网络;有关用户实体的信息(我也下载了微软提供的ERD(,但我找不到有关它的信息。有各种关于用户和团队的内容,但与MSDN不同联系人实体上的页面。

基本上我在这里有一个自定义实体,其中一个属性/字段(名称为ownerid(使用用户实体。当我在网站上查看实体并点击所有者时,我验证了这一点,并将我引导到用户管理网页。

我想通过c#创建这个自定义实体的新实例,并正确分配ownerid属性。我以前使用过EntityReference,但我不确定这是正确的做法。

你能帮忙吗?感谢:(


ownerid是Dynamics CRM中的一个特殊属性。如果创建实体时Ownwership设置为User or Team,则会在实体内部自动创建属性ownerid(以及其他属性,如createdbymodifiedby(。

ownerid可以处理SystemUser记录或Team记录,SystemUser的元数据如下:

http://msdn.microsoft.com/en-us/library/gg328525(v=crm.5(.aspx

以及`Team is here:的元数据

http://msdn.microsoft.com/en-us/library/gg328312(v=crm.5(.aspx

该字段是EntityReference,因此您需要使用语法(如果您想指定与实际创建记录的用户不同的用户(

entity["ownerid"] = new EntityReference("systemuser", userId);

但是由于这个属性是特殊的,上面的语法只有在创建新记录时才有效,如果你想修改现有记录,你需要使用AssignRequest

Guid accountId = new Guid("90F8889F-EB95-E781-8417-000C44420CBC");
Guid newOwnerId = new Guid("A8AA28B4-9015-DF11-8062-000E0CA08051");
AssignRequest assignRequest = new AssignRequest
        {
            Assignee = new EntityReference("systemuser", newOwnerId),
            Target = new EntityReference("account", accountId)
        };
service.Execute(assignRequest);

我在哪里可以找到用户实体的详细信息,以及如何获得它的实例