为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Dynamics 365 SDK 中检索没有 Guid 的实体?

如何在 Dynamics 365 SDK 中检索没有 Guid 的实体?

C#
千巷猫影 2021-10-09 10:52:30
好吧,我有这个命令:IOrganizationService.Retrieve(String entityName, Guid ID, ColumnSet columnSet)我尝试了 SDK 代码示例,但在创建记录时使用 Guid 进行检索信息,如下所示: Guid _accountId = orgService.Create(account);我想Guid使用帐户(实体)的名称来获取它,我该怎么做?
查看完整描述

3 回答

?
倚天杖

TA贡献1828条经验 获得超3个赞

你必须使用RetrieveMultiple方法 &QueryExpression来实现它。例如,下面的MSDN 代码示例是自我解释以获取联系人lastname = “Brown”


//  Query using ConditionExpression and FilterExpression

ConditionExpression condition1 = new ConditionExpression();

condition1.AttributeName = "lastname";

condition1.Operator = ConditionOperator.Equal;

condition1.Values.Add("Brown");            


FilterExpression filter1 = new FilterExpression();

filter1.Conditions.Add(condition1);


QueryExpression query = new QueryExpression("contact");

query.ColumnSet.AddColumns("firstname", "lastname");

query.Criteria.AddFilter(filter1);


EntityCollection result1 = _serviceProxy.RetrieveMultiple(query);

Console.WriteLine();Console.WriteLine("Query using Query Expression with ConditionExpression and FilterExpression");

Console.WriteLine("---------------------------------------");

foreach (var a in result1.Entities)

{

    Console.WriteLine("Name: " + a.Attributes["firstname"] + " " + a.Attributes["lastname"]);

}

查询表达式用于检索多个记录的方法(例如IOrganizationService.RetrieveMultiple方法),用于对查询表达式(例如 BulkDeleteRequest)指定的结果集执行操作的消息中,并且当特定记录的 ID 不是已知。


查看完整回答
反对 回复 2021-10-09
?
MYYA

TA贡献1868条经验 获得超4个赞

我使用查询得到了解决方案:


        //Query for the GUID of the Account using Account Name

        QueryExpression query = new QueryExpression("account");

        string[] cols = { "accountid", "name" };

        query.Criteria = new FilterExpression();

        query.Criteria.AddCondition("name", ConditionOperator.Equal, "Account Name");

        query.ColumnSet = new ColumnSet(cols);

        var account = Service.RetrieveMultiple(query);

        //Casting the reference to GUID

        Guid accountId = (Guid)account[0].Attributes["accountid"];

这将使用帐户名称返回 Guid 信息。


查看完整回答
反对 回复 2021-10-09
  • 3 回答
  • 0 关注
  • 129 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信