如何从Web Reference检查传入的XML?

时间:2011-06-26 02:38:15

标签: c# soap reference paypal

我们正在调用 Paypal Soap API 并运行

{"The specified type was not recognized: name='OptionDetailsType', namespace='urn:ebay:apis:eBLBaseComponents', at <OptionDetails xmlns='urn:ebay:api:PayPalAPI'>."}

这是真的,因为OptionDetailsType不在urn:ebay:apis:eBLBaseComponents但在urn:ebay:api:PayPalAPI。我怀疑这是在来自 Paypal 的传入 XML 中指定的,但我不确定如何检查传入的 XML 。代码在Reference.cs中的Invoke中消失

[System.Web.Services.Protocols.SoapHeaderAttribute("RequesterCredentials", Direction=System.Web.Services.Protocols.SoapHeaderDirection.InOut)]
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Bare)]
[return: System.Xml.Serialization.XmlElementAttribute("BMGetButtonDetailsResponse", Namespace="urn:ebay:api:PayPalAPI")]
public BMGetButtonDetailsResponseType BMGetButtonDetails([System.Xml.Serialization.XmlElementAttribute(Namespace="urn:ebay:api:PayPalAPI")] BMGetButtonDetailsReq BMGetButtonDetailsReq) {
    object[] results = this.Invoke("BMGetButtonDetails", new object[] {
                BMGetButtonDetailsReq});
    return ((BMGetButtonDetailsResponseType)(results[0]));
}

通常,有没有办法检查 Web Reference 中的传入 XML ? (VS2010)

2 个答案:

答案 0 :(得分:2)

Fiddler 是一个很棒的HTTP代理/检查工具,用于检查HTTP和/或SOAP流量。

修改

有关通过SSL进行追踪的提示 here

答案 1 :(得分:1)

我再次击败“服务参考与Web参考”鼓的原因是使用服务参考为您提供了一个用于观看XML的现成解决方案。只需使用Configuration Editor Tool (SvcConfigEditor.exe)启用Message Logging