Frage

Ok, also habe ich den Dienstverweis in meinem .NET-Projekt. Und ja, ich weiß, dass Sie nun Zugriff auf Proxy-Klassen haben.

Aber in der Vergangenheit, ich bin es gewohnt, dies über ein HttpWebRequest Objekt zu tun NVP verwenden, aber nie versucht, die WSDL und eine SOAP-Anforderung auf diese Weise zu senden.

Ich bin mir nicht ganz sicher, was zu verwenden Objekt die Anfrage zu senden. Nicht sicher, wo man hier starten. Ich habe bei der Dokumentation sah aber keine gute Beispiele gibt für .NET und PayPal gesehen.

Anders als eine WSDL gegen eine HttpWebRequest über eine NVP-API und Abfragezeichen params senden, ich verstehe wirklich nicht, ob es einen Unterschied, wie Sie die Anfrage senden. Es ist alles nur über Http so können Sie nicht verwenden HttpWebRequest auch über einen SOAP-API (unter Verwendung von WSDL)?

War es hilfreich?

Lösung

Sie beginnen mit einem Dienstverweis aus den Metadaten zu erzeugen: Rechtsklick auf das Projekt -> Add Service Reference und verweisen auf die WSDL-URL: https://www.sandbox.paypal.com/wsdl/PayPalSvc.wsdl

Dies wird Proxy-Klassen für das aktuelle Projekt erzeugen, die verwendet werden könnten, Anforderungen zu senden:

using (var client = new PayPalAPIInterfaceClient())
{
    var credentials = new CustomSecurityHeaderType
    {
        Credentials = new UserIdPasswordType
        {
            Username = "username",
            Password = "password"
        }
    };
    var request = new AddressVerifyReq
    {
        AddressVerifyRequest = new AddressVerifyRequestType
        {
            Street = "some street",
            Zip = "12345"
        }
    };
    var response = client.AddressVerify(ref credentials, request);
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top