2011-08-25 17 views
6

Bir WCF oluşturma ve bir Windows Hizmeti (yükleyici ile birlikte) olarak barındıran bir (iyi) adım adım örnek bulmaya çalışıyorum. Ben VS2010 kullanıyorum ve 1 fonksiyonu ile basit bir WCF (sadece 'Merhaba') döner.Windows Service olarak adım adım bir WCF'ye ihtiyacınız var

Lütfen Google ve posta gönderin; Birinin gerçekten kullandığı bir kaynağı arıyorum. Yaptığım Googling'in çoğu, yapmaya çalıştığım şey için fazla bir şey yapmadı.

Sadece WCF kitaplığımı alıp bir Pencere Hizmeti olarak yüklemek için bir yol bulmak istiyorum. 2008'de yaptım, ama 2010 ... Farklı.

cevap

2

sadece ServiceHost host = new ServiceHost(YourClass) arayarak hizmet sizin onstart yönteminde wcf sözleşme sınıfını barındırmak için ihtiyaç ve hizmet onclose yönteminde sen host.close() çağrı gerekir. Sunum seçeneği, R12 kullanarak saf html istemcileri ile konuşmak istediğiniz müşterilerinize hangi türden konuşmak istediğinize bağlı olarak değişir. WebServiceHost hizmetinizi barındırmanız gerekir ve bu durumda kullanmanız gereken bağlama webHttpBinding'dur.

Aşağıdaki örnek takip ve pencereler hizmet barındırılan WCF oluşturmak ve VS2008 ve VS2010 içinde wcf hizmeti oluşturmada herhangi bir fark bulamadık Eğer link

aradığınız bu emin im başardı var.

Ne tür istemcilerle konuşmak istiyorsunuz ve hangi protokolleri desteklemek istiyorsunuz? Bu, tüm yapılandırmanızı tanımlar.

+2

btw? Uygulamanızın hata ayıklaması ve çalıştırılması gerekiyorsa, Visual Studio'nun yönetici olarak çalıştırılması gerekir çünkü makinenize ad alanı kaydedilmesi yönetici ayrıcalıkları gerektirir. Hem cevap hem de yorum için – coolcake

+0

+1 oy, bu yüzden çok umutsuzca arıyordum ve VS yönetici olarak çalıştırmayı unutmuştum. İkisine de şükür! –

0

Bir Windows Hizmetinde WCF kullandığımda kullandığım şey, Windows hizmet çerçevesi olarak Topshelf ve WCF hizmetlerini dinamik olarak barındırmak, yüklemek ve çalıştırmak için this Code Project code'un değiştirilmiş bir sürümüdür.

Topshelf, bir konsol uygulaması olarak çalıştırılabildiğinden geliştirmeyi ve hata ayıklamayı çok kolaylaştırır. Windows servisini durdurmadan WCF servis kütüphanelerini dinamik olarak güncelleyebilmek sadece havalıdır. ;) İleride

+1

google bu yana kullanışlı bir kodum yok ama bu zor değil https://handcraftsman.wordpress.com/2011/02/28/creating-a-wcf-calculator-in-a-windows-service-with-topshelf/ – kenny

5

- Bu konuya bakıyor başkası için: CodeProject: WCF Service with Windows Service Hosting, consumed from C# App:

İşte

Bu soru aradığı şeyi en iyi örnek buldum edilir! MSDN: How to: Host a WCF Service in a Managed Windows Service:

yukarıda belirtilen Bu bağlantı ama zorla okumak için diğer şeyler bir sürü, WCF hizmeti tüketmek nasıl gösterir!

Yukarıdaki ikinci bağlantı, WCF hizmetini oluşturmak için iyidir, ancak tüketmek için iyi değildir: MSDN: Hosting and Consuming WCF Services!

Nadiren, geliştirme ortamınız için kullandığınız MSDN makalelerini nadiren bulabilirim :-)

+0

İkinci bağlantı "MSDN: Nasıl Yapılır: Yönetilen bir Windows hizmetinde bir WCF hizmetini barındır" FTW! – Sanchitos