如何通过SOAPui从Microsoft Dynamics CRM 2015获取数据或检索数据

时间:2015-09-24 05:02:06

标签: c# dynamics-crm soapui microsoft-dynamics dynamics-crm-2015

我知道这可能是重复的问题,但在2015年发布时,我在获取数据时遇到了一些问题。

我已经阅读了与此主题相关的所有博客,但无法实现。

我已按照以下步骤获取数据。

  1. 来自http:// {server} / {OrgName} /XRMServices/2011/Organization.svc
  2. 的SOAPui中的已加载项目
  3. 编辑端点,在Organisation.svc
  4. 之后添加/ web
  5. 添加了身份验证。 (用户名,密码,域)
  6. 添加了内容类型,SOAPAction,Accept
  7. 我仍然收到Bad-Request错误。

    请帮忙。如果可能,请提供一些申请样品。

    感谢。

1 个答案:

答案 0 :(得分:2)

以下是如何设置请求,请确保您正确设置:

  1. 创建一个指向http://<organization url>/XrmServices/2011/Organization.svc?wsdl的SOAP项目(您必须进行身份验证)

  2. 创建一个新的w / e请求

  3. 在请求中,将Authentication设置为NTLM(提供凭据)

  4. 在请求中,您需要三个Headers这样(如果您已经在那里,请仔细检查它们):

    4.1。 SOAPAction - 从请求界面属性

    复制/粘贴它

    4.2 Accept - application/xml, text/xml, */*

    4.3 Content-Type - text/xml; charset=utf-8

  5. 提供完善的请求并转到

  6. 例如,这就是RetrieveEntityRequest的样子(尤其会返回account实体的元数据):

    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Header><a:SdkClientVersion xmlns:a="http://schemas.microsoft.com/xrm/2011/Contracts">6.0</a:SdkClientVersion></soapenv:Header>
    <soapenv:Body>
     <Execute xmlns="http://schemas.microsoft.com/xrm/2011/Contracts/Services" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
      <request i:type="a:RetrieveEntityRequest" xmlns:a="http://schemas.microsoft.com/xrm/2011/Contracts">
       <a:Parameters xmlns:b="http://schemas.datacontract.org/2004/07/System.Collections.Generic">
        <a:KeyValuePairOfstringanyType>
         <b:key>EntityFilters</b:key>
         <b:value i:type="c:EntityFilters" xmlns:c="http://schemas.microsoft.com/xrm/2011/Metadata">Attributes</b:value>
        </a:KeyValuePairOfstringanyType>
        <a:KeyValuePairOfstringanyType>
         <b:key>MetadataId</b:key>
         <b:value i:type="ser:guid"  xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/">00000000-0000-0000-0000-000000000000</b:value>
        </a:KeyValuePairOfstringanyType>
        <a:KeyValuePairOfstringanyType>
         <b:key>RetrieveAsIfPublished</b:key>
         <b:value i:type="c:boolean" xmlns:c="http://www.w3.org/2001/XMLSchema">true</b:value>
        </a:KeyValuePairOfstringanyType>
        <a:KeyValuePairOfstringanyType>
         <b:key>LogicalName</b:key>
           <b:value i:type="c:string" xmlns:c="http://www.w3.org/2001/XMLSchema">account</b:value>
        </a:KeyValuePairOfstringanyType>
       </a:Parameters>
       <a:RequestId i:nil="true" />
       <a:RequestName>RetrieveEntity</a:RequestName>
      </request>
     </Execute>
    </soapenv:Body>
    </soapenv:Envelope>