HI,
我正在使用BTS 2006适配器为MS CRM 4.0创建记录并从MS CRM 4.0获取数据。 我希望在创建记录后从CRM获得响应,或者从CRM获取数据 为此,我使用 response.xsd 与MS CRM 4.0的BTS 2006适配器一起接收来自MS CRM的响应 我将reponse.xsd的目标命名空间设置为:targetNamespace = “http://schemas.microsoft.com/crm/2007/BizTalkAdapter/MicrosoftCRM/Response”,根据此处的组织名称 orgName:“MicrosoftCRM” (有关详细信息,我指的是http://www.ascentium.com/blog/crm/Post398.aspx)
现在我收到一个错误:
抛出异常:段-1,进度-1 内部异常:收到意外消息类型“与预期类型不匹配”http://schemas.microsoft.com/crm/2007/BizTalkAdapter/MicrosoftCRM/Response#Response'
异常类型:UnexpectedMessageTypeException 资料来源:Microsoft.XLANGs.Engine 目标站点:Void VerifyMessage(Microsoft.XLANGs.Core.Envelope,System.String,Microsoft.XLANGs.Core.Context,Microsoft.XLANGs.Core.OperationInfo)
以下是Visual Studio 2005中生成的response.xsd的Schema实例
- <ns0:Response xmlns:ns0="http://schemas.microsoft.com/crm/2007/BizTalkAdapter/MicrosoftCRM/Response">
- <Header>
<ReturnCode>ReturnCode_0</ReturnCode>
<ErrorCode>ErrorCode_0</ErrorCode>
<ErrorString>ErrorString_0</ErrorString>
<Retryable>Retryable_0</Retryable>
</Header>
- <Body>
<Message>Message_0</Message>
</Body>
</ns0:Response>
这是来自CRM的响应的暂停消息详细信息
<ns0:Response xmlns:ns0="http://schemas.microsoft.com/crm/2007/BizTalkAdapter/MicrosoftCRM/Response">
<Header>
<ReturnCode>1</ReturnCode>
<ErrorCode></ErrorCode>
<ErrorString></ErrorString>
<Retryable></Retryable>
</Header>
<Body>
<Message><prefix:CreateResponse xmlns:prefix="http://localhost/schemas.microsoft.com/crm/2007/MicrosoftCRM/CreateResponse"><id>f0650fb5-3ff7-dd11-b0f0-0003ff1a2a3c</id></prefix:CreateResponse></Message>
</Body>
</ns0:Response>
谢谢,
Kuldip
答案 0 :(得分:0)
从Microsoft BizTalk CRM 4.0适配器开始,使用适配器自动生成的架构“CRMAdapterResponse_Response.xsd”,而不是“response.xsd”。此架构将特定于所考虑的组织。
使用架构将解决您的“架构与预期类型不匹配”的问题。
感谢。