मुख्य app.config से सभी क्लाइंट WCF कॉन्फ़िगरेशन (& lt; system.serviceModel & gt;) को निकालने के लिए मेरे पास एक विशिष्ट आवश्यकता है फ़ाइल, और एक अलग XML फ़ाइल में। मैं जो व्यवहार देखना चाहूंगा वह उसी तरह है, जो ऐप सेटिंगिंग सेक्शन में फ़ाइल = "" निर्देश के जरिए उपलब्ध है। वास्तव में, मैं प्रत्येक खपत सेवा के लिए एक अलग फ़ाइल निर्दिष्ट करने में सक्षम होना चाहता हूं ...
मुझे पता है कि मैं एक कस्टम चैनलबिल्ल्डर कारखाना बना सकता हूं जो कि एक XML फ़ाइल से कॉन्फ़िगरेशन डेटा पढ़ता है (या उनमें से श्रृंखला), लेकिन मैं अभी भी क्लाइंट द्वारा "स्वत: खोज" कॉन्फ़िगर डेटा को पसंद करना चाहूंगा
कुछ बुनियादी Google खोजों का यह सुझाव संभव नहीं है कि यह संभव नहीं है, लेकिन मैं एसए से देखने के लिए चाहता हूं - यहां किसी को भी कुछ पता है जो मैं नहीं खोज पा रहा हूं? :)
संपादित करें ::
टिम स्कॉट और डेवोगोन दोनों संभव सुझाव के साथ आए, लेकिन एक जो सिस्टम सिस्टम सेवा घटक खंड के घटक अनुभाग को विभाजित करने पर निर्भर करता है फ़ाइलों को अलग करने के लिए यद्यपि यह काफी नहीं है कि मैं क्या देख रहा हूं (मैं प्रत्येक सेवा और इसके संबंधित तत्वों को कड़ाई से परिभाषित करना चाहूंगा, एक फ़ाइल प्रति सेवा), यह है एक विकल्प मैं जांच करता हूं और आपको बताता हूं कि मैंने क्या सोचा था।
मुझे एक प्रवृत्ति है प्रोग्रामेटिक रूप से मेरी सभी सेवा सेटिंग्स कॉन्फ़िगर करें
मेरे क्लाइंट वास्तव में एक्सएमएल को समझने के लिए नहीं हैं और उन्होंने मुझसे पूछा है कि पुराने आईएनआई शैली की तरह विन्यास फाइलों को भी बनाये।
यह करना आसान है (INI फ़ाइल कोड पढ़ना शामिल है):
// यूआरआई बनाओ जिसका उपयोग सेवा अंतबिंदु के रूप में किया जाता है Uri tcpBaseAddress = new URI (string.Format ("net.tcp: // {0}: {1}" , लोकलिप एड्रेस। टॉस्ट्रिंग (), जनरल पोर्ट नंबर)); // सेवा समापन बिंदु के लिए net.tcp बाध्यकारी बनायें NetTcpBinding ntcBinding = नया NetTcpBinding (); NtcBinding.Security.Mode = SecurityMode.None; System.ServiceModel.Channels.Binding tcpBinding = ntcBinding; // सर्विस होस्ट बनाने और समापन बिंदु होस्ट = नई सेवाहोस्ट (टाइपफ (वर्डवर्स सेवा), टीसीपीबेस एड्डर) जोड़ें;
चूंकि हम मेजबान को कॉन्फ़िगर कर सकते हैं (और क्लाइंट, उस मामले के लिए) प्रोग्रामैटिक रूप से आप सेटिंग्स को किसी भी तरीके से चुनने से नहीं रखते हैं (डेटाबेस, एक्सएमएल, पागल पाठ फ़ाइल आदि) )।
Comments
Post a Comment