2011-08-25 16 views
6

के रूप में एक चरण-दर-चरण डब्ल्यूसीएफ की आवश्यकता है, मैं डब्ल्यूसीएफ बनाने और इसे विंडोज सेवा (इंस्टॉलर के साथ) के रूप में होस्ट करने का एक (अच्छा) चरण-दर-चरण उदाहरण खोजने की कोशिश कर रहा हूं। मैं वीएस -2010 का उपयोग कर रहा हूं और 1 फ़ंक्शन के साथ एक साधारण डब्ल्यूसीएफ है (बस 'हैलो' देता है)।विंडोज सेवा

कृपया Google और पोस्ट न करें; मैं वास्तव में उपयोग किए जाने वाले संसाधन की तलाश में हूं। मैंने जो कुछ भी किया है, उसके लिए मैंने जो कुछ भी किया है, उसके लिए बहुत कुछ नहीं बदला है।

मैं बस अपनी डब्ल्यूसीएफ लाइब्रेरी लेना चाहता हूं, और इसे विंडो सेवा के रूप में स्थापित करने का एक तरीका ढूंढना चाहता हूं। मैंने इसे 2008 में किया है, लेकिन 2010 है ... अलग।

उत्तर

2

तुम बस ServiceHost host = new ServiceHost(YourClass) बुला सेवा के अपने onStart विधि में WCF अनुबंध वर्ग की मेजबानी करने की जरूरत है और आपकी सेवा के onclose विधि में आप कॉल host.close() की जरूरत है। होस्टिंग विकल्प इस बात पर निर्भर करता है कि आप किस प्रकार के क्लाइंट से बात करना चाहते हैं यदि आप आरईएसटी का उपयोग कर शुद्ध एचटीएमएल क्लाइंट से बात करना चाहते हैं तो आपको WebServiceHost में अपनी सेवा होस्ट करने की आवश्यकता है और उस मामले में उपयोग करने की बाध्यकारी आपको webHttpBinding है।

मैं निम्न उदाहरण का पालन किया और खिड़कियों सेवा की मेजबानी की WCF बना सकते हैं और सुनिश्चित करें कि आप के लिए link

यह है कि क्या देख रहे हैं मैं VS2008 और VS2010 में WCF सेवा बनाने में कोई अंतर नहीं मिला im करने में सक्षम था है।

आप किस प्रकार के क्लाइंट से बात करना चाहते हैं और आप कौन से प्रोटोकॉल का समर्थन करना चाहते हैं। यह सब आपके विन्यास को परिभाषित करता है।

+2

btw जो ओएस आप अपने विकास के वातावरण के लिए उपयोग कर रहे हैं लगता है? विज़ुअल स्टूडियो को व्यवस्थापक के रूप में चलाना चाहिए यदि आपको अपना एप्लिकेशन डीबग करना और चलाने के लिए है क्योंकि आपकी मशीन में नेमस्पेस को पंजीकृत करने के लिए व्यवस्थापकीय विशेषाधिकारों की आवश्यकता होती है। उत्तर और टिप्पणी दोनों के लिए – coolcake

+0

+1 वोट, यह वह लिंक था जिसे मैं बहुत सख्त खोज रहा था और मैं व्यवस्थापक के रूप में वीएस चलाने के लिए भूल गया था। दोनों के लिए कुडोस !!! –

0

मैं क्या उपयोग किया है जब मैं एक Windows सेवा में WCF का उपयोग Topshelf Windows सेवा ढांचे और this Code Project code का एक संशोधित संस्करण गतिशील, मेजबानी को स्थापित करने और WCF सेवाओं को चलाने के लिए के रूप में है।

टॉपशेल्फ़ इसे विकसित करना और डीबग करना बहुत आसान बनाता है क्योंकि इसे कंसोल एप्लिकेशन के रूप में चलाया जा सकता है। विंडोज सेवा को रोकने के बिना डब्ल्यूसीएफ सेवा पुस्तकालयों को गतिशील रूप से अपडेट करने में सक्षम होने के नाते बस अच्छा है। ;)

+1

इस पर Google है क्योंकि मेरे पास कोड आसान नहीं है लेकिन यह कठिन नहीं है https://handcraftsman.wordpress.com/2011/02/28/creating-a-wcf-calculator-in-a-windows-service-with-topshelf/ – kenny

5

भविष्य में संदर्भ के लिए - इस सूत्र को देखकर किसी और के लिए: CodeProject: WCF Service with Windows Service Hosting, consumed from C# App:

यहाँ सबसे अच्छा उदाहरण है कि मैं क्या इस प्रश्न के लिए देख रहा था के लिए पता चला है! MSDN: How to: Host a WCF Service in a Managed Windows Service:

यह लिंक ऊपर उल्लेख किया WCF सेवा का उपभोग करने के लिए कैसे, लेकिन अन्य सामान का एक बहुत की खोजबीन करना साथ दिखाता है!

ऊपर यह दूसरा लिंक डब्ल्यूसीएफ सेवा बनाने के लिए अच्छा है, लेकिन इसे उपभोग करने के लिए नहीं: MSDN: Hosting and Consuming WCF Services!

मैं शायद ही कभी MSDN लेख है जो मुझे पसंद :-)

+0

दूसरा लिंक "एमएसडीएन: कैसे करें: एक प्रबंधित विंडोज सेवा में एक डब्ल्यूसीएफ सेवा होस्ट करें" एफटीडब्ल्यू! – Sanchitos