आप वेब सेवा द्वारा उजागर प्रकार का उपयोग किया जा सकता है, या यह हो सकता है कि आप वेब संदर्भ जोड़ने के लिए कर रहे हैं ताकि उचित कनेक्शन जानकारी कॉन्फ़िग फ़ाइल में जोड़ा जाता है। एक Winform एप्लिकेशन किसी भी तरह से डीएलएल की कॉन्फ़िगरेशन फ़ाइल का उत्तराधिकारी या उपयोग नहीं करेगा जब तक कि आप इसके लिए कुछ फैंसी लोडिंग तंत्र को पका नहीं लेते। दूसरे शब्दों में, जब आप एक वेब संदर्भ जोड़ते हैं तो DLL में, यह कॉन्फ़िगरेशन फ़ाइल को वेब सेवा से कनेक्ट करने के बारे में जानकारी मिलती है, लेकिन जब आप किसी एप्लिकेशन में DLL का उपयोग करते हैं, तो आपके एप्लिकेशन को उस जानकारी की अपनी कॉन्फ़िगरेशन फ़ाइल में आवश्यकता होती है, इस प्रकार आपको एक वेब संदर्भ जोड़ना होगा ताकि जानकारी उत्पन्न हो।
एक प्रकार वेब संदर्भ द्वारा उजागर का उपयोग कर के संबंध में, मैं अगर यह एक मुद्दा आप अनुभव कर रहे हो सकता है यकीन नहीं है। मुझे डीएलएल में इस तरह की चीज का सामना करना पड़ा है। उदाहरण के लिए, SharpMap.dll एक SharpMapData
वर्ग वाणी, और WrapperOfSharpMap.dll एक विधि ProcessData(SharpMapData blah)
कहा जाता है अगर मैं एक WinForm आवेदन लिखने और WrapperOfSharpMap.dll के लिए एक संदर्भ जोड़ने की है, मैं भी SharpMap.dll के लिए एक संदर्भ जोड़ने के लिए क्योंकि ProcessData
पर कॉल करने के लिए मुझे फ़ंक्शन को पास करने के लिए SharpMapData
उदाहरण बनाना होगा। दूसरे शब्दों में, मैं SharpMap.dll में घोषित एक प्रकार का उपयोग कर रहा हूं, इसलिए इसके संदर्भ की आवश्यकता है।
इस समस्या को हल करने के लिए, WrapperOfSharpMap.dll के निर्माता तो जैसे एक WrapperSharpMapData
वर्ग बनाना चाहिए:
class WrapperSharpMapData
{
private SharpMapData hiddenSharpMapData;
//create proprerties to access data elements using standard CLR types or other wrapper types
}
मदद करता है आपको WinForm में सेवा संदर्भ जोड़ने की आवश्यकता नहीं है ... आप क्या त्रुटि देख रहे हैं? –
System.InvalidOperationException मेरा .NET फ्रेंच में है (... sigh ...) लेकिन ऐसा कुछ कहता है "सेवा संदर्भ नहीं मिला"। – dsimard