azure - नीला अनुप्रयोग सेटिंग्स मेरे appsettings.json फ़ाइल मूल्यों को ओवरराइड नहीं कर रहे हैं




asp.net-core (2)

धन्यवाद पटेल, आपकी मदद की बहुत सराहना हुई और मुझे एक वैकल्पिक समाधान खोजने में मदद मिली। VSTS कार्य का उपयोग करने और एप्लिकेशन सेटिंग को बदलने के लिए, आपको रिलीज़ कार्य में वेरिएबल जोड़ना होगा और चर प्रतिस्थापन के लिए कार्य में जेसन फाइल देना होगा।

जब "ऐज़्यूर ऐप सर्विस" को रिलीज़ करें कार्य में आपको एक "फ़ाइल ट्रांसफ़ॉर्म्स और चर प्रतिस्थापन" अनुभाग देखना चाहिए। यहां आप जेएसओन फ़ाइल के पथ की आपूर्ति करेंगे, जिसमें आप वैरिएबल वैल्यू को स्वैप करना चाहते हैं।

तब आपको रिहाई पर्यावरण पर विकल्पों के बटन पर क्लिक करना होगा। पॉप आउट मेनू में आपको चर कॉन्फ़िगर करने का विकल्प दिखाई देगा।

यहां से आप जेएसऍन गुण जोड़ सकते हैं जिसे आप एक चर के रूप में संशोधित करना चाहते हैं। मेरे मामले में कनेक्शन स्ट्रिंग जो निम्नलिखित की तरह दिखेगा:

"ConnectionStrings.DefaultConnection"

तो बस अपने कनेक्शन स्ट्रिंग मान में डाल दिया। तैनाती के दौरान VSTS आपके लिए इन मूल्यों को स्वैप करेगा।

मैंने अपने appsettings.json फ़ाइल से Azure के अनुप्रयोग सेटिंग्स से डिफ़ॉल्ट कनेक्शन जोड़ने का प्रयास किया है लेकिन एज़ल कनेक्शन स्ट्रिंग को ओवरराइड नहीं करेगा।

कोई भी लेख या ब्लॉग मुझे राज्य मिल सकता है कि मुझे जो करना चाहिए था वह कनेक्शन स्ट्रिंग नाम जोड़ देता है क्योंकि यह ऐपसेटिंग.जॉन्सन फ़ाइल और एज़ूर में बताता है कि बाकी को करना चाहिए (जैसे https://tehremo.wordpress.com/2016/ 10/07 / ओवरराइड-कनेक्शन-स्ट्रिंग-ऐप-सेटिंग्स-इन-एएसपी-नेट-कोर-और-एज़ूर-ऐप-सेवा / ) लेकिन जब यह एप्लिकेशन प्रकाशित हो जाता है तो यह मेरी स्थानीय कनेक्शन स्ट्रिंग का उपयोग कर रहा है।

मेरी स्टार्टअप.cs फ़ाइल निम्न की तरह दिखती है:

नोट: मैं "डेज़र एज़ूर ऐप सर्विस" रिलीज कार्य के साथ VSTS निरंतर डिलीवरी का उपयोग कर प्रकाशित कर रहा हूं।


मुझे एक ऐसी ही समस्या थी (समस्या PostgreSQL कनेक्शन स्ट्रिंग प्रकार के साथ थी, मुझे इसे कस्टम में बदलना था) और अब यह मेरे लिए काम करता है, इसलिए ये टुकड़े हैं:

  1. यह मेरे appsettings.json फ़ाइल है मेरे पास मेरे appsettings.Development.json में 'Psql' सेट का मान है, लेकिन appsettings.json में यह खाली है।
  2. ये एज़्योर पोर्टल में सेट की गई सेटिंग्स हैं। कृपया ध्यान दें, कनेक्शन स्ट्रिंग ओवरराइड करने के दो तरीके हैं।
  3. यह मेरा स्टार्टअप सीएस फ़ाइल का हिस्सा है I स्टार्टअप कन्स्ट्रक्टर में सेटिंग कैसे लागू की जाती है और जिस तरह से मैं कॉन्फ़िगर सर्विसेज विधि में कनेक्शन स्ट्रिंग प्राप्त करता है (GetConnectionString एक मानक एक्सटेंशन विधि है) के आदेश पर ध्यान दें।

नीचे मेरी टिप्पणियों से अतिरिक्त जानकारी:

एज़्यूर जीयूआई (कनेक्शन स्ट्रिंग्स, एप्लिकेशन सेटिंग्स) आंतरिक रूप से पर्यावरण चर का उपयोग करती है, इसलिए appsettings.json एक ही रहेंगे।

अगर AppsSettings.json के लिए VSTS रिलीज़ गतिविधि के दौरान ओवरराइट होने की आवश्यकता है (इससे पहले कि उसे Azure पर प्रकाशित किया जाएगा), कॉलिन के ALM कॉर्नर बिल्ड एंड रिलीज टूल्स का उपयोग किया जा सकता है यहां कॉलिन के ALM कॉर्नर बिल्डर एंड रिलीज टूल्स और ट्यूटोरियल के लिंक हैं।







appsettings