2014-07-02 9 views
5

Ich versuche, diese http://footballpool.dataaccess.eu/data/info.wso?wsdl Web-Service async auf Windows Phone zu konsumieren. Mein Code ist dies:Web Service Windows Phone 7 (405) Methode nicht zulässig

private void button1_Click(object sender, RoutedEventArgs e) 
    { 
     ServiceReference1.InfoSoapTypeClient client = new ServiceReference1.InfoSoapTypeClient(); 

     client.AllCardsCompleted += new EventHandler<ServiceReference1.AllCardsCompletedEventArgs>(GetAllPlayers); 

     client.AllCardsAsync(true); 

    } 

    private void GetAllPlayers(object sender, ServiceReference1.AllCardsCompletedEventArgs e) 
    { 
     textBlock1.Text = e.Result.ToString(); 
    } 

Ich habe gelesen, viele ähnlichen Anwers für ähnliche Fragen, aber kein Telefon für Fenster‘. Der Fehler, den ich zurückerhalte ist: "Der Remote-Server hat eine unerwartete Antwort zurückgegeben: (405) Methode nicht zulässig."

Der Webdienst sieht außerhalb des Projekts gut aus. Wenn Sie auf den Link tippen, sehen Sie nichts, aber wenn Sie den Link erneut eingeben, erhalten Sie das wsdl-Dokument.

+0

Entschuldigung, ich glaube, Sie können nicht verwenden Wso Protokoll Web Service in Windows Phone 7. Aber ich sehe das an. Wenn ich etwas finde, werde ich es dir sagen. – jackjop

+0

Danke !! Ich freue mich .. – Apostolos

+1

Haben Sie eine Idee, wenn es möglich ist, von Windows Phone 8 zu konsumieren? – Apostolos

Antwort

2

"(405) Method Not Allowed" bedeutet, dass Ihr Client eine HTTP-Methode verwendet, die der Server nicht erwartet (Sie versuchen beispielsweise, GET auszuführen, während der Server einen POST erwartet). T

Versuchen Sie, HTTP-Verkehr mit fiddler oder wireshark zu erfassen und überprüfen Sie die HTTP-Anfrage, die die App sendet und die Antwort des Servers. Vergleichen Sie sie mit einem richtigen Anfrage/Antwort-Paar, das Sie erhalten, wenn Sie diesen Service von WP7 verwenden (Sie können WCFTestClient dafür verwenden).

Eine andere Möglichkeit, dies anzugehen, wäre, die Proxy (Client) -Klassen zu vergleichen, die beim Hinzufügen der WebService-Referenz in Ihrer WP7-App und in einer Standard-Konsolenanwendung generiert werden. Vielleicht hat der Proxy auf WP7 einige falsche Methodensignaturen?

Eine weitere Sache: wenn diese Dienstleistung mit WCFTestClient Prüfung, ich habe einen Fehler:

The maximum message size quota for incoming messages (65536) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element.

So stellen Sie sicher, dass die MaxReceivedMessageSize richtig eingestellt ist.