Temel HTTP Hizmeti

TemelHttpService örneği, Windows Communication Foundation (WCF) REST Programlama modelini kullanarak HTTP tabanlı, RPC tabanlı bir hizmetin (popüler olarak "POX" (Düz Eski XML) hizmeti olarak adlandırılır) nasıl uygulanduğunu gösterir. Bu örnek iki bileşenden oluşur: şirket içinde barındırılan WCF HTTP hizmeti (Service.cs) ve hizmeti oluşturan ve ona çağrı yapan bir konsol uygulaması (Program.cs).

Örnek Ayrıntılar

WCF hizmeti, EchoWithGet giriş olarak geçirilen dizeyi döndüren ve EchoWithPost2 işlemi kullanıma sunar.

İşlemin EchoWithGet HTTP GET isteklerini işlediğini gösteren ile WebGetAttributeek açıklama eklenir. WebGetAttribute açıkça belirtmediği UriTemplateiçin işlemi, adlı sbir sorgu dizesi parametresi kullanılarak giriş dizesinin geçirilmesini bekler. Hizmetin beklediği URI biçiminin özelliği kullanılarak UriTemplate özelleştirilebileceğini unutmayın.

İşlemEchoWithPost, bir GET işlem olmadığını (yan etkileri vardır) belirten ile WebInvokeAttributeek açıklama eklenir. WebInvokeAttribute açıkça belirtmediği Methodiçin, işlem istek gövdesinde dizesi olan HTTP POST isteklerini işler (örneğin, XML biçiminde). İstek için HTTP yönteminin ve URI biçiminin sırasıyla ve UriTemplate özellikleri kullanılarak Method özelleştirilebileceğini unutmayın.

App.config dosyası, WCF hizmetini özelliği olarak ayarlanmış truebir varsayılan WebHttpEndpointHelpEnabled değerle yapılandırıyor. Sonuç olarak WCF altyapısı, hizmete HTTP istekleri oluşturma ve hizmetin HTTP yanıtını kullanma hakkında bilgi sağlayan otomatik HTML tabanlı bir yardım sayfası http://localhost:8000/Customers/help oluşturur.

Program.cs, bir WCF kanalı fabrikasının hizmete çağrı yapmak ve yanıtları işlemek için nasıl kullanılabileceğini gösterir. Bunun bir WCF hizmetine erişmenin yalnızca bir yolu olduğunu unutmayın. ve WebClientgibi HttpWebRequest diğer .NET Framework sınıflarını kullanarak hizmete erişmek de mümkündür.

Örnek, şirket içinde barındırılan bir hizmet ve her ikisi de konsol uygulamasında çalışan bir istemciden oluşur. Konsol uygulaması çalışırken istemci hizmete istekte bulunur ve yanıtlardan konsol penceresine ilgili bilgileri yazar.

Bu örneği kullanmak için

  1. Temel Http Hizmeti Örneği için çözümü açın. Visual Studio 2012'yi başlatırken, örneğin başarıyla yürütülmesi için yönetici olarak çalıştırmanız gerekir. Bunu yapmak için Visual Studio simgesine sağ tıklayın ve bağlam menüsünden Yönetici istrator Olarak Çalıştır'ı seçin.

  2. Çözümü oluşturmak için Ctrl+Shift+B tuşlarına basın ve ardından Ctrl+F5 tuşlarına basarak konsol uygulamasını hata ayıklamadan çalıştırın. Konsol 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ışırken istemci geçerli etkinliğin durumunu yazar.

  3. Örneği sonlandırmak için herhangi bir tuşa basın.