zoukankan      html  css  js  c++  java
  • Dynamics CRM2016 Web API之通过实体的primary key查询记录(二)

           继续接上篇,还是通过primary key来查询数据,本篇介绍两个我个人比较喜欢的查询方式,一个是查询单个字段,一个是查询lookup关联实体中的属性字段。

        先来看如何查询单个字段,只需要在url的最后加上“/字段名",作用同表达式"?$select=字段名",前者的返回值直接取value值即可,很简洁。

    $.ajax({
        async: false,
        type: "GET",
        contentType: "application/json; charset=utf-8",
        datatype: "json",
        url: Xrm.Page.context.getClientUrl() + "/api/data/v8.0/accounts(" + id.replace('{', '').replace('}', '') + ")/name",
        success: function (data, textStatus, XmlHttpRequest) {
    
            var name = data.value;
        },
        error: function (XmlHttpRequest, textStatus, errorThrown) {
        }
    });

          再来看查询lookup关联实体中的属性字段

    $.ajax({
        async: false,
        type: "GET",
        contentType: "application/json; charset=utf-8",
        datatype: "json",
        url: Xrm.Page.context.getClientUrl() + "/api/data/v8.0/accounts(" + id.replace('{', '').replace('}', '') + ")/territoryid?$select=description",
        success: function (data, textStatus, XmlHttpRequest) {
    
            var description = data.description;
        },
        error: function (XmlHttpRequest, textStatus, errorThrown) {
        }
    });

          上述代码是取客户实体记录中相关联的区域中的说明字段,按以前odata的方式就需要通过两个retrieve,通过客户id查询到区域的lookup字段的id值,再通过这个id去查询区域实体,最后得到说明字段中的值,但有了新的API后一个表达式"/territoryid?$select=description"搞定,如果你想取区域记录的所有字段把"?$select"去掉即可,so easy。




  • 相关阅读:
    DELPHI中应用GoogleMap[转]
    给DBGrid添加鼠标滚动事件
    枚举和卸载消息钩子[转]
    区域性名称和标识符
    VCL 中的 Windows API 函数: AlphaBlend
    高效读书,实用阅读指南
    defaultservlethandler不生效原因,springmvc静态资源拦截方案比较
    indexOf原理,Java,javascript,python实现
    可见性是什么?(通俗易懂)
    我们一起学程序五子棋
  • 原文地址:https://www.cnblogs.com/cl1024cl/p/6205829.html
Copyright © 2011-2022 走看看