gpt4 book ai didi

c# - IOrganisationService.Retrieve 记录不存在

转载 作者:太空狗 更新时间:2023-10-30 01:15:05 26 4
gpt4 key购买 nike

我编写了代码来检查 CRM 中是否存在记录。问题是 IOrganisationService.Retrieve 在找不到记录时返回错误而不是空值。我希望找不到多条记录,我不想先使用 try catch,然后再使用 catch 中的错误。

using (OrganizationServiceProxy serviceProxy = new OrganizationServiceProxy(OrganizationUri, HomeRealmUri, credentials, null))
{
IOrganizationService service = (IOrganizationService)serviceProxy;
//Get record

var record = service.Retrieve(entryId, guid, new ColumnSet(true)); //switch to var if no work
//Check if record is not null/empty
recordExists = !String.IsNullOrWhiteSpace(record.Id.ToString()); //<- does the record exist
}

建议?

最佳答案

Retrieve 方法假定具有给定 ID 的记录实际存在于系统中。一般来说,它只会在两种情况下失败:

  1. 该记录已被其他用户或进程删除。
  2. 用户没有足够的读取权限。

当您需要查询可能不存在的数据或查询可以产生零、一个或多个记录时,请使用QueryExpression 查询;您可以使用 RetrieveMultiple 方法发出这些查询。如果愿意,您还可以使用 LINQ for CRM,它基本上包装了 QueryExpression 功能。

关于c# - IOrganisationService.Retrieve 记录不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39954462/

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