मेरे पास एक कामकाजी सिल्वरलाइट 4 एप्लिकेशन है (वीएस -2010, एसएल 4, डब्ल्यूसीएफ आरआईए, कैसिनी, 64-बिट विंडोज 7 का उपयोग कर मेरे देव बॉक्स पर होस्ट किया गया)।विंडोज सेवा से डब्ल्यूसीएफ आरआईए सेवा का उपयोग कैसे करें?
आप एक सेवा बनाया है:
<% @ServiceHost Service="MyApp.Services.MyService Factory="System.ServiceModel.DomainServices.Hosting.DomainServiceHostFactory" %>
जब मैं http://localhost:52878/ClientBin/MyApp-Services-MyService.svc ब्राउज़ मैं निम्न देखें: ClientBin निर्देशिका के अंदर मैं एक .svc फ़ाइल है कि मेरी सेवा का वर्णन करता है। इस सेवा को परीक्षण करने के लिए, आपको क्लाइंट बनाने और सेवा पर कॉल करने के लिए इसका उपयोग करने की आवश्यकता होगी। http://localhost:52878/ClientBin/MyApp-Services-MyService.svc?wsdl
मैं एक Windows सेवा अनुप्रयोग से कि सेवा का उपयोग करना चाहते हैं svcutil.exe: आप निम्न सिंटैक्स के साथ कमांड लाइन से svcutil.exe उपकरण का उपयोग कर सकते हैं। मेरी समझ यह है कि ऐसा करने के लिए मुझे SOAP एंड-पॉइंट सक्षम करने की आवश्यकता है। तो, मैं निम्नलिखित जोड़ें मेरी web.config फाइल करने के लिए:
<domainServices>
<endpoints>
<add name="soap"
type="System.ServiceModel.DomainServices.Hosting.SoapXmlEndpointFactory,
System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</endpoints>
</domainServices>
सबसे पहले, Intellisense टैग की उपस्थिति के बारे में शिकायत करते हुए कहा,:
तत्व system.ServiceModel अमान्य चाइल्ड तत्व domainServices है ।
दूसरा, उपरोक्त सिल्वरलाइट एप्लिकेशन काम करना बंद कर देता है, संभवतः क्योंकि यह परिवर्तन अंतर्निहित वेब सेवाओं को तोड़ देता है।
तीसरा, ऐसा प्रतीत होता है कि System.ServiceModel.DomainServices.Hosting असेंबली में वास्तव में SoapXmlEndpointFactory प्रकार नहीं है; अगर मैं web.config के लिए ऊपर जोड़ने के बाद सेवा करने के लिए ब्राउज़ करने के लिए कोशिश मैं देख रहा हूँ:
लोड नहीं कर सका प्रकार 'System.ServiceModel.DomainServices.Hosting.SoapXmlEndpointFactory' विधानसभा से 'System.ServiceModel। DomainServices.Hosting, संस्करण = 4.0.0.0, संस्कृति = तटस्थ, PublicKeyToken = 31bf3856ad364e35 '।
अगर मैं परावर्तक का उपयोग कर विधानसभा का निरीक्षण किया, मुझे लगता है कि यह DomainServiceEndpointFactory और PoxBinaryEndpointFactory प्रकार है, लेकिन कोई SoapXmlEndpointFactory शामिल हैं।
क्या कोई मुझे बता सकता है कि मुझे यह कैसे करना चाहिए? मुझे विश्वास नहीं है कि सिल्वरलाइट एप्लिकेशन के अलावा किसी अन्य चीज़ में डब्ल्यूसीएफ आरआईए सेवा का उपभोग करना मुश्किल हो सकता है!
एसएल फोरम (http://forums.silverlight.net/forums/p/180880/409333.aspx) से कुछ सुझावों में सिस्टम को स्थानीय पर कॉपी करने की सेटिंग शामिल है। ServiceModel.DomainServices .Hosting असेंबली (समस्या के रूप में काम नहीं करता है कि निर्दिष्ट विधानसभा से निर्दिष्ट प्रकार गुम है) और यह सुनिश्चित करना कि .NET Framework 4.0 स्थापित है (यह है)। –