Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
SoapAndHttpEndpoints örneği, RPC tabanlı bir hizmetin nasıl uygulanıp SOAP biçiminde ve WCF Web Programlama modelini kullanarak "Düz Eski XML" (POX) biçiminde nasıl kullanıma açileceğini gösterir. Hizmetin HTTP bağlaması hakkında daha fazla bilgi için Temel HTTP Hizmeti örneğine bakın. Bu örnek, farklı bağlamalar kullanarak SOAP ve HTTP üzerinden aynı hizmeti ortaya çıkarmakla ilgili ayrıntılara odaklanır.
Gösterir
WCF kullanarak SOAP ve HTTP üzerinden RPC hizmetini açığa çıkarma.
Tartışma
Bu örnek iki bileşenden oluşur: WCF hizmeti içeren bir Web Uygulaması projesi (Hizmet) ve SOAP ve HTTP bağlamalarını kullanarak hizmet işlemlerini çağıran bir konsol uygulaması (İstemci).
WCF hizmeti, giriş olarak geçirilen dizeyi yankılayan 2 işlemi (GetData ve PutData ) kullanıma sunar. Hizmet işlemleri WebGetAttribute ve WebInvokeAttribute ile ek açıklamalar olarak eklenir. Bu öznitelikler, bu işlemlerin HTTP projeksiyonunu denetler. Buna ek olarak, SOAP bağlamaları üzerinden kullanıma sunulmalarını sağlayan OperationContractAttribute ek açıklaması yapılır. Hizmetin PutData yöntemi, bir WebFaultException üretir, bu HTTP durum kodu kullanılarak HTTP üzerinden geri gönderilir ve SOAP üzerinden SOAP hatası olarak aktarılır.
Web.config dosyası WCF hizmetini 3 uç noktayla yapılandırıyor:
SOAP tabanlı istemciler tarafından erişim için hizmet meta verilerini kullanıma sunan ~/service.svc/mex uç noktası.
İstemcilerin HTTP bağlamasını kullanarak hizmete erişmesini sağlayan ~/service.svc/http uç noktası.
İstemcilerin HTTP bağlaması üzerinden SOAP kullanarak hizmete erişmesini sağlayan ~/service.svc/soap uç noktası.
HTTP uç noktası, helpEnabled'i true olarak ayarlanmış <webHttp> standart bir uç nokta ile yapılandırılmıştır. Sonuç olarak hizmet, HTTP tabanlı istemcilerin hizmete erişmek için kullanabileceği ~/service.svc/http/help konumunda XHTML tabanlı bir yardım sayfasını kullanıma sunar.
İstemci projesi, Hizmet Başvurusu Ekle kullanılarak oluşturulan bir SOAP ara sunucusu aracılığıyla hizmete erişimi ve WebClient kullanarak hizmete erişimi gösterir.
Örnek, Web'de barındırılan bir hizmet ve bir konsol uygulamasından oluşur. Konsol uygulaması çalışırken istemci hizmete istekte bulunur ve yanıtlardan konsol penceresine ilgili bilgileri yazar.
Örneği çalıştırmak için
SOAP ve HTTP Uç Noktaları Örneği için çözümü açın.
Çözümü oluşturmak için Ctrl+Shift++B tuşlarına basın.
Henüz açık değilse, Çözüm Gezgini penceresini açmak için CTRL+W, S tuşlarına basın.
Çözüm Gezgini penceresinde, Hizmet projesine sağ tıklayın ve imleci Yeni Örneği Başlat bağlam menüsünün görünmesi için Hata ayıklama bağlam menüsü seçeneğinin üzerine getirin. Yeni Örneği Başlat'a tıklayın. Bu, hizmeti barındıran ASP.NET geliştirme sunucusunu başlatır.
Çözüm Gezgini penceresinden İstemci projesine sağ tıklayın ve Hata Ayıklama bağlam menüsü seçeneğinin üzerine gelip imleci hareket ettirerek Yeni Örneği Başlat bağlam menüsünün görünmesini sağlayın. Yeni Örneği Başlat'a tıklayın.
İstemci konsolu penceresi görüntülenir ve çalışan hizmetin URI'sini ve çalışan hizmet için HTML yardım sayfasının URI'sini sağlar. Herhangi bir zamanda, tarayıcıya yardım sayfasının URI'sini yazarak HTML yardım sayfasını görüntüleyebilirsiniz.
Örnek çalıştığında istemci geçerli etkinliğin durumunu yazar.
İstemci konsol uygulamasını sonlandırmak için herhangi bir tuşa basın.
Hizmette hata ayıklamayı durdurmak için SHIFT+F5 tuşlarına basın.
Windows Bildirim Alanı'nda ASP.NET geliştirme sunucusu simgesine sağ tıklayın ve bağlam menüsünden Durdur'u seçin.