c# - 使用 Web 服务查询检索 Dynamics CRM 自定义字段

标签 c# asp.net dynamics-crm

我正在尝试从 CRM 安装中提取信息,到目前为止,使用默认字段没有问题。但是我在检索自定义字段时遇到困难,例如联系人有一个名为 web_username 的自定义字段。

我目前的代码是

        QueryExpression query = new QueryExpression();
        query.EntityName = "contact";
        ColumnSet cols = new ColumnSet();
        cols.Attributes = new string[] { "firstname", "lastname" };
        query.ColumnSet = cols;

        BusinessEntityCollection beReturned = tomService.RetrieveMultiple(query);
        foreach (contact _contact in beReturned.BusinessEntities)
        {
            DataRow dr = dt.NewRow();
            dr["firstname"] = _contact.firstname;
            dr["lastname"] = _contact.lastname;
            dt.Rows.Add(dr);
        }

如何在查询中包含自定义字段?我尝试四处搜索,但还没有成功,但我可能搜索不正确,因为我不习惯 CRM 术语。

提前干杯!

最佳答案

我已经能够解决这个问题。如果它对其他人有用,这就是我所做的。除了我已将自定义字段添加到 ColumnSet 之外,查询设置与之前一样。

cols.Attributes = new string[] { "firstname", "lastname", "new_web_username" };

然后使用 RetrieveMultipleResponse 和将 ReturnDynamicEntities 设置为 true 的 Request

        RetrieveMultipleResponse retrived = new RetrieveMultipleResponse();

        RetrieveMultipleRequest retrive = new RetrieveMultipleRequest();
        retrive.Query = query;
        retrive.ReturnDynamicEntities = true;

        retrived = (RetrieveMultipleResponse)tomService.Execute(retrive);

如果我有更好的方法,请继续评论。

编辑 如果您转换为联系人,请使用我原来问题中的示例

contact myContact = (contact)myService.Retrieve(EntityName.contact.ToString(), userID, cols);

然后您可以访问对象的属性

                phone = myContact.telephone1;
            password = myContact.new_password;

如果您更新您在 CRM 中添加的自定义字段,您的 CRM webreference 将可用。

关于c# - 使用 Web 服务查询检索 Dynamics CRM 自定义字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1062704/

相关文章:

c# - HTTP 请求在 Postman 中有效,但在 C# 代码中无效

c# - 允许用户使用 Ajax 下载文件

c# - 在 asp.net Web API 项目中找不到 NinjectWebCommon

dynamics-crm - 没有活跃的交易。此错误通常是由忽略服务调用错误并继续处理的自定义插件引起的

c# - 如果委托(delegate)是不可变的,为什么我可以做 x += y 这样的事情?

c# - 如何使用 Visual Studio 2008 部署 asp.net 应用程序

c# - 处理不完整或错误的远程注销

asp.net - 向 ASP.NET Web API Controller 发送多部分/混合 http 请求

dynamics-crm - 如何在 MS Dynamics 中对客户端实体进行分组

dynamics-crm - Crm 2016 创建选项集表示所有实体