2009-07-23 14 views
8

के लिए आवेदक सेटिंग्स पर बनाएं मेरे पास एक डीएलएल है जो डेटाबेस तक पहुंचता है और कॉन्फ़िगरेशन फ़ाइल में संग्रहीत अनुप्रयोग सेटिंग से कनेक्शन स्ट्रिंग को पढ़ता है। इस डीएलएल का संदर्भ देने वाले एप्लिकेशन को इसके कॉन्फ़िगरेशन सेटिंग में इस कॉन्फ़िगरेशन सेटिंग के लिए मान सेट करने की आवश्यकता होगी।डिफ़ॉल्ट सेटिंग को बंद करें ValueAttribute .NET अनुप्रयोग

मेरी समस्या यह है कि उत्पन्न कॉन्फ़िगरेशन कोड स्वचालित रूप से DefaultSettingValueAttribute के माध्यम से डिफ़ॉल्ट मान के रूप में मेरे dev कनेक्शन स्ट्रिंग का उपयोग करता है। फिर जब कोई एप्लिकेशन मेरे डीएलएल का संदर्भ देता है तो यह अपनी कॉन्फ़िगरेशन फ़ाइल में प्रवेश किए बिना काम करता है क्योंकि यह डिफ़ॉल्ट मान का उपयोग कर रहा है। यह बग तैनाती के समय तक पकड़ा नहीं गया था जब dev कनेक्शन स्ट्रिंग अब मान्य नहीं था।

क्या एप्लिकेशन सेटिंग्स के लिए डिज़ाइनर का उपयोग करने का कोई तरीका है लेकिन DefaultSettingValueAttribute के निर्माण को बंद करें ताकि कोई डिफ़ॉल्ट मान न हो और एप्लिकेशन को कॉन्फ़िगरेशन में कोई मान प्रदान करने के लिए मजबूर किया जा सके?

+0

मुझे यकीन है कि वे 'नहीं कर रहा हूँ एक सेटिंग प्रदान करने के लिए "मजबूर" होना चाहिए। क्या आपने इसे हाथ से हटाने की कोशिश की है? क्या होता है। यह सेटिंग को डिफ़ॉल्ट (टी): संदर्भ प्रकारों के लिए शून्य, पूर्णांक के लिए 0, आदि –

+2

मैंने हाथ से हटाने का प्रयास किया है, लेकिन जब आप प्रोजेक्ट-> Properties-> सेटिंग्स में सेटिंग्स में नया संपादन करते हैं यह DefaultSettingValueAttribute को पुन: उत्पन्न करता है। – Topdown

+0

यह संकलित DLL या EXE में dev सेटिंग्स का खुलासा करता है (यदि आप एक टेक्स्ट एडिटर में DLL ou EXE खोलते हैं, तो अपने डेटाबेस उपयोगकर्ता नाम और पासवर्ड की खोज करने का प्रयास करें) – MaxiWheat

उत्तर

15

उस प्रविष्टि को चुनें जिसे आप डिफ़ॉल्ट मान को हटाना चाहते हैं, और प्रॉपर्टी विंडो में, GenerateDefaultValueInCode को गलत पर सेट करें।

-2

यह देर हो चुकी है लेकिन ...

जब अनुप्रयोग सेटिंग पढ़ने में, My.Settings का उपयोग .TheConfigurationKey बजाय बंद My.MySettings.Default .TheConfigurationKey

संबंधित मुद्दे