एसएलएन फाइल क्या है?
.SLN एक्सटेंशन वाली फ़ाइल एक विज़ुअल स्टूडियो समाधान फ़ाइल का प्रतिनिधित्व करती है जो एक समाधान फ़ाइल में परियोजनाओं के संगठन के बारे में जानकारी रखती है। ऐसी समाधान फ़ाइल की सामग्री फ़ाइल के अंदर सादे पाठ में लिखी गई है और फ़ाइल को किसी भी पाठ संपादक में खोलकर देखा/संपादित किया जा सकता है। एक समाधान फ़ाइल में निहित जानकारी लगातार बनी रहती है और इसका उपयोग समाधान से जुड़ी जानकारी जैसे कि परियोजनाओं और किसी भी अन्य आवश्यक जानकारी को लोड करने के लिए किया जाता है। समाधान फ़ाइल द्वारा संदर्भित प्रोजेक्ट फ़ाइलों में उस प्रोजेक्ट के आइटम्स के साथ पदानुक्रम को पॉप्युलेट करने के लिए पर्यावरण को सक्षम करने के लिए अतिरिक्त जानकारी होती है। .sln फ़ाइल में कोई डेटा संग्रहीत नहीं किया जाता है, हालाँकि यदि आवश्यक हो तो परियोजना की जानकारी .sln फ़ाइल में लिखी जा सकती है।
एसएलएन संस्करण इतिहास
समय बीतने के साथ प्रत्येक Microsoft Visual Studio समाधान के साथ समाधान स्वरूप संस्करण विकसित हुआ है। इनके बारे में विवरण इस प्रकार है।
विजुअल स्टूडियो संस्करण | समाधान स्वरूप संस्करण |
---|---|
2003 | 8.00 |
2005 | 9.00 |
2008 | 10.00 |
2010 | 11.00 |
2013 | 12.00 |
2015 | 12.00 |
2017 | 12.00 |
समाधान फ़ाइल की सामग्री
एक समाधान फ़ाइल में कई खंड होते हैं जिन्हें पर्यावरण द्वारा परियोजना को लोड करने के लिए पढ़ा जाता है। एक नमूना .sln फ़ाइल सामग्री नीचे दिखाई गई है।
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") # "Project1", "Project1.vbproj", "{8CDD8387-B905-44A8-B5D5-07BB50E05BEA}"
EndProject
Global
GlobalSection(SolutionNotes) # postSolution
EndGlobalSection
GlobalSection(SolutionConfiguration) # preSolution
ConfigName.0 # Debug
ConfigName.1 # Release
EndGlobalSection
GlobalSection(ProjectDependencies) # postSolution
EndGlobalSection
GlobalSection(ProjectConfiguration) # postSolution
{8CDD8387-B905-44A8-B5D5-07BB50E05BEA}.Debug.ActiveCfg # Debug|x86
{8CDD8387-B905-44A8-B5D5-07BB50E05BEA}.Debug.Build.0 # Debug|x86
{8CDD8387-B905-44A8-B5D5-07BB50E05BEA}.Release.ActiveCfg # Release|x86
{8CDD8387-B905-44A8-B5D5-07BB50E05BEA}.Release.Build.0 # Release|x86
EndGlobalSection
GlobalSection(ExtensibilityGlobals) # postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) # postSolution
EndGlobalSection
EndGlobal
परियोजना घोषणा
एक समाधान फ़ाइल में एक से अधिक परियोजनाओं की घोषणा हो सकती है और वह भी अंतर परियोजना प्रकारों की। उदाहरण के लिए, एक एकल समाधान फ़ाइल में CSharp के साथ-साथ VB.NET प्रोजेक्ट भी हो सकता है। Project-Type-GUID का इस्तेमाल करके समाधान में इन प्रकारों की पहचान की जाती है। उपरोक्त परियोजना घोषणा को स्पष्ट समझ के लिए निम्नानुसार सामान्यीकृत किया जा सकता है।
Project("{Project-Type-GUID}") # "Project-Name", "Project-Path.extension", "{Project-GUID}"
प्रोजेक्ट-टाइप-गाइड:
प्रोजेक्ट-टाइप-गाइड विभिन्न प्रोजेक्ट प्रकारों के लिए अद्वितीय है और प्रोजेक्ट के प्रकार की पहचान करने के लिए समाधान रीडर द्वारा उपयोग किया जाता है। इस मामले में, F184B08F-C81C-45F6-A57F-5ABD9991F28F दिखाता है कि यह एक VB.NET प्रोजेक्ट है।
परियोजना GUID:
परियोजना का अद्वितीय GUID जो इसे समाधान में अन्य परियोजनाओं से अलग करता है। समाधान में एक परियोजना की अद्वितीय आईडी समाधान में अन्य परियोजनाओं के लिए इसे एक्सेस करना संभव बनाती है।
.Sln फ़ाइल के प्रोजेक्ट सेक्शन में निहित जानकारी के आधार पर, पर्यावरण प्रत्येक प्रोजेक्ट फ़ाइल को लोड करता है। तब परियोजना ही परियोजना पदानुक्रम को आबाद करने और किसी भी नेस्टेड परियोजनाओं को लोड करने के लिए जिम्मेदार होती है। समाधान में किए गए कोई भी परिवर्तन परियोजना को सहेजने या बंद करने पर वापस समाधान फ़ाइल में सहेजे जाते हैं।
विजुअल स्टूडियो सॉल्यूशन वीएस प्रोजेक्ट
प्रोजेक्ट: तार्किक रूप से, जब आप विज़ुअल स्टूडियो का उपयोग करके कोई ऐप या सॉफ़्टवेयर बनाना प्रारंभ करते हैं, तो आप एक नया प्रोजेक्ट प्रारंभ करते हैं। एक प्रोजेक्ट में सभी आवश्यक फ़ाइलें जैसे स्रोत कोड, आइकन, चित्र, डेटा फ़ाइलें और बहुत कुछ होता है, जिसे एक निष्पादन योग्य ऐप, वेबसाइट या लाइब्रेरी में संकलित किया जाएगा।
समाधान: एक समाधान में एक या अधिक प्रोजेक्ट होते हैं। तो समाधान विजुअल स्टूडियो परियोजनाओं के लिए एक कंटेनर की तरह है। तार्किक रूप से, हम कह सकते हैं कि कोई व्यक्ति अपने व्यवसाय के लिए वेबसाइट, डेस्कटॉप ऐप, आरामदायक सेवा और मोबाइल ऐप सहित संपूर्ण समाधान प्राप्त करना चाहता है।