C # Masaüstü uygulaması php web hizmeti tüketen ilgili Sorun

1 Cevap

Ben c # masaüstü uygulaması geliştirilmesi ve ben bu uygulamayı tüketmek çalıştığınızda bir php uygulama geliştirilen bir webservies kullanıyorum. Ben sadece web hizmeti web referans ekleyin ve aşağıdaki kodu düşünce erişmeye çalıştığınızda

WebReference.TestWSDL pdl = new testingApp.WebReference.TestWSDL();
string copy = pdl.verify("testing");

i yöntemi doğrulamak aramaya çalıştığınızda hata atar. hata

Possible SOAP version mismatch: Envelope namespace http://schemas.xmlsoap.org/wsdl/ beklenmiyordu. Bekliyoruz http://schemas.xmlsoap.org/soap/envelope/.

ve web hizmeti bağlantısı gibi oldu

http://171.139.101.12/code/index.php/webservice/wsdl

1 Cevap

Bu hizmet fonksiyonlarını açıklayan meta, ama aslında hizmetini çağırmak için kullanılamaz - karşılaşmış hata webservice çağırdığınızda, size hizmet için WSDL (Web Service Definition Language) verilmektedir bildiren edilir . Genellikle, hizmet URI? "Wsdl" veya "wsdl" ya ekleyerek WSDL erişebilirsiniz.

Eğer tüketmek çalıştığınız webcoder iki unsur vardır.

Gerçek hizmet de var:

http://171.139.101.12/code/index.php/webservice

Bir proxy oluşturmak için kullanılan wsdl.exe üzerinden Visual Studio nitelendirerek meta, burada oturuyor:

http://171.139.101.12/code/index.php/webservice/wsdl

Sen Web Reference özelliklerini düzenlemek ve uygun adresini güncellemeniz gerekir. Alternatif olarak, PDL değişkenin özelliklerini değiştirebilir, ve kod bitiş noktası değiştirebilirsiniz.