无论我尝试什么,我都会不断收到 MSCRM 4.0 引发的以下异常
请求 SetStateITG_glcode 的输入 XML 格式无效:缺少必填字段“EntityId”
这是从 WireShark 到 MSCRM 捕获的 SoapEnvelope,您可以在其中看到实际上有一个 EntityId 元素。
<s:Body><ns0:Execute xmlns:ns0="http://schemas.microsoft.com/crm/2007/WebServices" xmlns:ns3="http://microsoft.com/wsdl/types/" xmlns:ns4="http://schemas.microsoft.com/crm/2006/WebServices" xmlns:ns6="http://schemas.microsoft.com/crm/2006/Scheduling" xmlns:ns2="http://schemas.microsoft.com/crm/2006/CoreTypes" xmlns:ns5="http://schemas.microsoft.com/crm/2006/Query" xmlns:ns1="http://schemas.microsoft.com/crm/2007/CoreTypes" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><ns0:Request xsi:type="ns0:SetStateITG_glcodeRequest"><ns0:OptionalParameters/><ns0:EntityId>f0754ebf-50d2-de11-93aa-000c29af16b6</ns0:EntityId><ns0:ITG_glcodeState>Active</ns0:ITG_glcodeState><ns0:ITG_glcodeStatus>1</ns0:ITG_glcodeStatus></ns0:Request></ns0:Execute></s:Body></s:Envelope>
这是 Wireshark 再次捕获的提交给 MSCRM 的 SOAP 主体;此消息来自我编写的一个快速控制台应用程序,用于通过上面的 Web 服务客户端进行更新。
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><Execute xmlns="http://schemas.microsoft.com/crm/2007/WebServices"><Request xsi:type="SetStateITG_glcodeRequest"><OptionalParameters/><EntityId>c2fcef74-19cf-de11-9376-000c29af16b6</EntityId><ITG_glcodeState>Inactive</ITG_glcodeState><ITG_glcodeStatus>-1</ITG_glcodeStatus></Request></Execute></s:Body>
第二条消息工作;并且 MSCRM 做了它应该做的事情。第一个,除了命名空间前缀之外,是相同的结构......据我所知。
我错过了一些明显的东西吗?MSCRM 在抱怨什么?
谢谢