.नेट फ्रेमवर्क
माइक्रोसॉफ्ट .NET फ्रेमवर्क (Microsoft .NET Framework) एक सॉफ्टवेयर संरचना है जो माइक्रोसॉफ्ट विण्डोज़ (Microsoft Windows) ऑपरेटिंग सिस्टम पर चल रहे कंप्यूटर पर स्थापित किये जा सकते हैं। इसमें सामान्य प्रोग्रामिंग समस्याओं के निष्पादन के लिए कोडित समाधान का एक बड़ा पुस्तकालय भी शामिल है और एक आभासी मशीनहै जो विशेष रूप से ढांचे के लिए लिखे गए प्रोग्राम के क्रियान्वयन का प्रबंधन करती है। .NET फ्रेमवर्क (.NET Framework) माइक्रोसॉफ्ट (Microsoft) की एक पेशकश है और विण्डोज़ (Windows) प्लेटफॉर्म के लिए बनाये गए अधिकांश नए अनुप्रयोगों द्वारा इस्तेमाल करने के लिए बनाया गया है।
फ्रेमवर्क की बेस कक्षा लाइब्रेरी सुविधाओं की एक बड़ी सीमा प्रदान करता है जिसमें उपयोगकर्ता इंटरफ़ेस, डेटा का उपयोग, डेटाबेस कनेक्टिविटी, क्रिप्टोग्राफी, वेब अनुप्रयोग विकास, आंकिक एल्गोरिथ्म और नेटवर्क संचार शामिल हैं। वर्ग पुस्तकालय उन प्रोग्रामर द्वारा प्रयोग किया जाता है, जो आवेदन उत्पन्न करने के लिए इसे अपने स्वयं के कोड के साथ सम्मिलित करते हैं।
.NET फ्रेमवर्क (.NET Framework) के लिए प्रोग्राम लिखने के लिए एक सॉफ्टवेयर पर्यावरण को कार्यशील किया जाता है जो प्रोग्राम चलाने के लिए आवश्यकताओं का प्रबंधन करता है। .NET फ्रेमवर्क (.NET Framework) का भी हिस्सा, इस क्रम पर्यावरण को साझा भाषा क्रम (सी एल आर (CLR)) के रूप में जाना जाता है। सी एल आर (CLR) एक आवेदन आभासी मशीन प्रदान करता है ताकि प्रोग्रामर को कार्यक्रम क्रियान्वित करने के लिए विशिष्ट सी पी यू (CPU) की क्षमताओं की जरूरत नहीं पड़े. ऐसी सुरक्षा के लिए सी एल आर (CLR) भी अन्य महत्त्वपूर्ण सेवाएं प्रदान करता है, जैसे -स्मृति प्रबंधन और अपवाद हैंडलिंग. श्रेणी के पुस्तकालय और सी एल आर (CLR) साथ-साथ NET Framework का गठन करते हैं।
.NET फ्रेमवर्क (.NET Framework) के संस्करण-3 में विण्डोज़ सर्वर (Windows Server)2008, विण्डोज़ विस्ता (Windows Vista) और विण्डोज़-7 (Windows-7) शामिल हैं। फ्रेमवर्क का वर्तमान स्थिर संस्करण जो 3.5 है, उसे विण्डोज़ एक्स पी (Windows XP) और विण्डोज़ सर्वर (Windows Server) 2003 ऑपरेटिंग सिस्टम के परिवार पर भी स्थापित किया जा सकता है। फ्रेमवर्क के संस्करण 4 को 20 मई 2009 को एक सार्वजनिक बीटा के रूप में जारी किया गया था।
.NET फ्रेमवर्क (.NET Framework) परिवार में मोबाइल या एम्बेडेड उपकरण के इस्तेमाल के लिए दो संस्करण भी शामिल है। फ्रेमवर्क का एक छोटा संस्करण,.NET कम्पैक्ट फ्रेमवर्क, विण्डोज़ सीई (Windows CE) प्लेटफार्म पर उपलब्ध है और इसमें स्मार्टफोन के रूप में विण्डोज़ (Windows) मोबाइल उपकरण शामिल हैं। इसके अतिरिक्त, .NET सूक्ष्म फ्रेमवर्क गंभीर रूप से सीमित संसाधन उपकरणों पर लक्षित है।सामान्य भाषा मूलभूत संरचना, या सी एल आई (CLI) का उद्देश्य, एक भाषा-अपवाद हैंडलिंग, कचरा संग्रहण, सुरक्षा और अंतरसंक्रियता के लिए कार्य सहित आवेदन विकास और कार्यान्वयन के लिए तटस्थ मंच प्रदान करना है। सी एल आर (CLR) के दायरे के भीतर.NET फ्रेमवर्क (.NET Framework) के मुख्य पहलुओं को लागू करने से, यह कार्यशीलता एक भाषा से नहीं बांधा जा सकता, लेकिन कई रूपरेखा द्वारा समर्थित भाषाओं में उपलब्ध होगा। सी एल आई (CLI) के माइक्रोसॉफ्ट के कार्यान्वयन को साझा भाषा क्रम या सी एल आर (CLR) कहा जाता है।
NET असेंब्ली में सी आई एल (CIL) कोड रखे गए हैं। जैसा कि विनिर्देशन द्वारा सौंपा गया है, अस्सेम्बली पोर्टेबल निष्पादन योग्य (पीई) स्वरूप में, सभी डीएलएल (DLL) और ईएक्सई (EXE) फ़ाइलों के लिए विण्डोज़ (Windows) मंच पर संग्रहीत हैं। असेम्बली में एक या अधिक फ़ाइलें होते हैं जिनमें से एक प्रकट होना चाहिए, जो विधानसभा के लिए मेटाडाटा (metadata) है। एक विधानसभा का पूरा नाम (डिस्क पर फ़ाइल नाम के साथ नहीं भ्रमित करने के लिए) अपनी साधारण पाठ का नाम, संस्करण संख्या, संस्कृति हैं और सार्वजनिक कुंजी टोकन है। सार्वजनिक टोकन कुंजी एक अद्वितीय हैश उत्पन्न है जब असेम्बली संकलित हो, इस प्रकार दो असेम्बली की रूपरेखा को देखने के लिहाज़ से एक ही टोकन सार्वजनिक कुंजी कि गारंटी दी जा सके। एक निजी कुंजी ही असेम्बली के निर्माता का नाम भी निर्दिष्ट कर सकता है और मजबूत नामकरण के लिए इस्तेमाल किया जा सकता है और इसकी गारंटी देता है कि असेम्बली उसी लेखक की ओर से होता है जब असेम्बली का एक नया संस्करण तैयार होता है (वैश्विक असेंब्ली कैशे के लिए एक असेंब्ली जोड़ने की जरूरत पड़ती है).
सभी सी आई एल (CIL), .NET मेटाडाटा (.NET metadata) के माध्यम से स्वयं का वर्णन करते हैं। सी एल आर मेटाडाटा (CLR Metadata) यह जांचता है ताकि सही तरीके को सुनिश्चित किया जा सके। मेटाडाटा (Metadata) आम तौर पर भाषा पर संकलक डेवलपर्स द्वारा उत्पन्न किया जाता है लेकिन कस्टम गुण के माध्यम से डेवलपर्स अपने मेटाडाटा (Metadata) बना सकते हैं। मेटाडाटा (Metadata) असेम्बली के बारे में जानकारी है और यह .NET फ्रेमवर्क (.NET Framework) क्षमताओं को लागू करने के लिए भी प्रोग्रामिंग को प्रतिबिंबित करता है। फुच्क उ?????
.NET की अपनी सुरक्षा व्यवस्था के साथ साथ दो सामान्य विशेषताएं: कोड प्रवेश सुरक्षा (सी ए एस (CAS)) और प्रमाणीकरण और सत्यापन की है। कोड प्रवेश सुरक्षा सबूत आधारित है और एक विशेष सभा के साथ जुड़ा हुआ है। आम तौर पर सबूत विधानसभा का स्रोत है (चाहे वह स्थानीय मशीन पर स्थापित है या इंट्रानेट या इंटरनेट से डाउनलोड किया गया है). कोड प्रवेश सुरक्षा सबूत का उपयोग करता है ताकि कोड के लिए दी गई अनुमति का निर्धारण किया जा सके। अन्य कोड यह मांग कर सकते हैं कि एक कोड को निर्दिष्ट अनुमति दे दी जाये. मांग सी एल आर (CLR) कारणों के लिए एक कॉल चिति चल: कॉल चिति में प्रत्येक पद्धति के हर असेम्बली प्रदर्शन के लिए आवश्यक अनुमति की जाँच की जाती है, अगर किसी असेम्बली के लिए ऐसी अनुमति नहीं ली गयी है तो यह एक सुरक्षा अपवाद है।
जब एक असेम्बली भरी जाती है तो सी एल आर (CLR) विभिन्न परीक्षण करता है। ऐसे दो परीक्षण प्रमाणीकरण और सत्यापन हैं। प्रमाणीकरण के दौरान सी एल आर (CLR) यह जांच करती है कि क्या असेम्बली में वैध मेटाडाटा और सी आई एल (CIL) है और क्या आंतरिक टेबल सही हैं। सत्यापन इतना सटीक नहीं है। सत्यापन प्रणाली यह चेक करता है कि क्या कोड कुछ ऐसा भी करता है जो कि असुरक्षित है। एल्गोरिथ्म का उपयोग काफी रूढ़िवादी है, इसलिए कभी कभी सुरक्षित कोड है भी पास नहीं किये जाते है। असुरक्षित कोड केवल तभी कार्य में लाया जाता है जब असेम्बली द्वारा सत्यापन छूट की अनुमति हो, जिसका आमतौर पर मतलब यह होता है कि कोड स्थानीय मशीन पर स्थापित है।
.NET फ्रेमवर्क (.NET Framework) एक प्रक्रिया में चल रहे अलग कोड के लिए एक तंत्र के रूप में एपडोमेंज़ (AppDomains) का उपयोग करता है। एपडोमेंज़ (AppDomains) अन्य एपडोमेंज़ (AppDomains) से स्वतंत्र रूप से लोड या अनलोड और बनाया जा सकता है। यह आवेदन की गलती सहनशीलता बढ़ाने में मदद करता है, ताकि दोष या दुर्घटनाओं के एक एपडोमेंज़ (AppDomains) में आवेदन के शेष प्रभावित नहीं हों. एपडोमेंज़ (AppDomains) विभिन्न सुरक्षा विशेषाधिकारों के साथ भी स्वतंत्र रूप से कॉन्फ़िगर हो सकती है। यह संभावित असुरक्षित कोड अलग से आवेदन की सुरक्षा की वृद्धि में मदद कर सकता है। बहरहाल डेवलपर, आवेदन को उप डोमेंज़ में विभाजित करता है, ऐसा सी एल आर (CLR) द्वारा नहीं किया जाता है।
.NET फ्रेमवर्क (.NET Framework) में मानक वर्ग पुस्तकालयों का एक सेट शामिल है। वर्ग पुस्तकालय नेमस्पेस के पदानुक्रम में संगठित होता है अधिकांश एपीआई (APIs) में निर्मित या तो codice_1 या codice_2 नेमस्पेस का हिस्सा हैं। इन पुस्तकालय वर्गों में बड़ी संख्या में सामान फंक्शन्स होते हैं, जैसे कि फ़ाइल पढ़ने और ग्राफिक प्रतिपादन, डेटाबेस संपर्क और अन्य लोगों के अलावा एक्सएमएल (XML) दस्तावेज़ हेरफेर आदि। .NET वर्ग पुस्तकालय सभी .NET भाषाओं में उपलब्ध हैं। NET फ्रेमवर्क (.NET Framework) वर्ग पुस्तकालय दो भागों: बेस कक्षा पुस्तकालय और फ्रेमवर्क कक्षा लाइब्रेरी में विभाजित है।
बेस कक्षा लाइब्रेरी (बीसीएल (BCL)) पूरी कक्षा पुस्तकालय का एक छोटा सा सबसेट शामिल है और कक्षाओं का सेट है कि आम भाषा का मूल एपीआई क्रम सेवा कोर के रूप में है। codice_3 में वर्ग और codice_4 और codice_5 में कुछ वर्गों को बीसीएल (BCL) का एक हिस्सा माना जाता है। बीसीएल वर्ग दोनों में उपलब्ध है।NET फ्रेमवर्क (.NET Framework) के साथ साथ . NET कम्पैक्ट फ्रेमवर्क, माइक्रोसॉफ्ट सिल्वरलाईट (Microsoft Silverlight)और मोनो वैकल्पिक कार्यान्विति में भी हैं।
फ्रेमवर्क कक्षा लाइब्रेरी (एफसीएल (FCL)) बीसीएल कक्षाओं का एक सुपरसेट है और पूरी क्लास पुस्तकालय को संदर्भित करता है जो .NET फ्रेमवर्क (.NET Framework) को वहन करता है। इसमें पुस्तकालयों के एक विनफोर्म्ज़ (WinForms), ADO.NET, ASP.NET, भाषा समन्वित क्वेरी, विण्डोज़ (Windows) प्रस्तुति फाउंडेशन, विण्डोज़ (Windows) संचार अन्य लोगों के अलावा फाउंडेशन सहित विस्तार सेट, शामिल हैं। एफसीएल (FCL) बहुत सी++ (C++) जैसी भाषाओं और जावा के मानक पुस्तकालयों की तुलना में व्यापक है।
.NET फ्रेमवर्क (.NET Framework) सी एल आर (CLR) डेवलपर को स्मृति प्रबंध के बोझ से मुक्त कर देते (कार्य के दौरान आवंटन और मुक्त करता है); बजाय यह स्वयं स्मृति प्रबंधन ही है। इसे समाप्त करने के लिए, . NET प्रकार (वस्तुओं) को स्मृति की instantiations को प्रबंधित ढेर, स्मृति का एक पूल सी एल आर (CLR) द्वारा प्रबंधित से रेगुलर आबंटित किया जाता है। जब तक वहाँ एक वस्तु है, जो, वस्तु या तो एक वस्तु को एक प्रत्यक्ष संदर्भ या वस्तु का ग्राफ के द्वारा हो सकता है तब तक वस्तु को सी एल आर (CLR) द्वारा उपयोग में माना जाता है। जब किसी वस्तु के लिए कोई संदर्भ नहीं हो और यहाँ तक पहुँच नहीं हो या इस्तेमाल नहीं किया जा सके, तो यह कचरा बन जाता है। हालांकि, यह अभी भी यह स्मृति आवंटित करने पर अडिग रहती है। .NET फ्रेमवर्क (.NET Framework) एक कचरा कलेक्टर है जो समय समय पर आवेदन धागे से एक अलग धागा पर चलाया जाता है और यह सब व्यर्थ वस्तुओं की गणना करता है और इसमें उन्हें आवंटित स्मृति सुधारना शामिल हैं।
. NET कचरा (जी सी (GC)) कलेक्टर एक गैर नियतात्मक, संक्षिप्त, फुटकर और झाडू कचरा कलेक्टर है। जी सी (GC) केवल तभी चलाया जाता है जब स्मृति का एक निश्चित राशि का इस्तेमाल किया गया हो या वहाँ सिस्टम पर स्मृति के लिए काफी दबाव हो। चूंकि यह शर्त स्मृति को पुनः प्राप्त करने के लिए पहुँच की गारंटी नहीं है, इसलिए जी सी (GC) रन गैर नियतात्मक हैं। प्रत्येक .NET अनुप्रयोग रूट का एक सेट है, जो प्रबंधित ढेर पर वस्तुओं की ओर इशारा "(प्रबंधित वस्तुओं)" करता है। इनमें स्थिर वस्तुओं और स्थानीय चर या विधि मानकों के रूप में परिभाषित की वस्तुओं को शामिल किया जाता है। साथ ही सीपीयू रजिस्टर द्वारा निर्दिष्ट वस्तुओं को संदर्भित किया जाता है। जब जी सी (GC) रन किया जाता है, तो यह आवेदन को पॉज़ करता है और रूट में निर्दिष्ट प्रत्येक वस्तु के लिए, यह सभी वस्तुओं की रीकर्सिव्ली गणना करता है और उन्हें रीचेबुल चिह्नित करता है। यह .NET मेटाडाटा (.NET Metadata) का उपयोग करता है और वस्तुओं की खोज प्रतिबिंब को समझाकर फिर उन्हें रीकर्सिव्ली चलाता है। तब यह ढेर पर सभी वस्तुओं की गणना करता है जो (शुरू में लगातार आबंटन की होती हैं) प्रतिबिंब का उपयोग कर रहे थे। सभी वस्तुएं जो चिह्नित नहीं हैं, कचरा होती हैं। इस "निशान" चरण है। जब तक कचरा द्वारा आयोजित की स्मृति का कोई भी परिणाम नहीं निकलता है, इसे मुक्त स्थान माना जाता है। बहरहाल, यह वस्तुओं के बीच मुक्त स्थान छोड़ देता है, जो इसके पड़ोस का हिस्सा है। वस्तुओं को एक साथ "जमा" करने के लिए मुक्त स्पेस के द्वारा उन्हें फिर से मिलाने के लिए codice_6 का उपयोग कर पुनः मुक्त स्पेस में कॉपी किया जाता है। किसी वस्तु के लिए कोई संदर्भ वस्तु को मूव कर अवैध किया जाता है और यह GC द्वारा नए स्थान के अद्यतन को प्रतिबिंबित है। कचरा संग्रहण ख़त्म होने के बाद आवेदन फिर से शुरू हो जाता है।
.NET फ्रेमवर्क (.NET Framework) द्वारा इस्तेमाल जी सी (GC) वास्तव में "पीढ़ीगत" है। वस्तुओं को एक "पीढ़ी" सौंपा जाता है; नव निर्मित वस्तुएं "पीढ़ी 0" से संबंधित होती हैं। कचरा संग्रहण से बचानेवाली वस्तुएं "1 जनरेशन" के रूप में चिह्नित की जाती है और जनरेशन 1 वस्तुओं को बचानेवाली वस्तुएं "2 जनरेशन" की होती है। .NET फ्रेमवर्क (.NET Framework) जनरेशन को 2 वस्तुओं का उपयोग करता है। उच्च उत्पादन वस्तुएं अक्सर कम उत्पादन वस्तुओं से भी कम समय में कचरा एकत्र कर रहे हैं। यह कचरा संग्रहण की क्षमता बढ़ाने में मदद करता है, जैसे कि पुरानी वस्तुओं को नये वस्तुओं की तुलना में ज्यादा जीवन भर देते हैं। इस प्रकार, उम्र (और इस प्रकार अधिक संग्रह जीवित रहने की संभावना को हटाने की वस्तुओं) एक संग्रह रन की गुंजाइश से, कम वस्तुओं की जाँच और ठोस करने की आवश्यकता है।
अगस्त 2000 में, माइक्रोसॉफ्ट, हेवलेट-पेकार्ड (Hewlett-Packard) और इंटेल ने सीएलआई (CLI) मानकीकृत और सी प्रोग्रामिंग भाषा में कार्य किया। दिसम्बर 2001 तक, दोनों ECMA (ECMA 335 और ECMA 334 मानकों का अनुमोदन किया गया। अप्रैल 2003 में आईएसओ - आईएसओ (ISO) मानकों की मौजूदा संस्करण आईएसओ / आईईसी और आईएसओ 23271:2006 / 23270:2006 आईईसी हैं।
जब माइक्रोसॉफ्ट और उनके सहयोगी पार्टनर सीएलआई (CLI) और सी# के लिए पेटेंटों को होल्ड करते हैं तो ईसीएमए (ECMA) और आई एस ओ (ISO) की जरूरत पड़ती है क्योंकि सभी पेटेंटों को लागू करने के लिए उचित और भेदभाव रहित शर्तों के अंतर्गत आवश्यक रूप से कार्यान्वित करना पड़ता है। इन शर्तों की बैठक के अलावा, कंपनियों को पेटेंट रॉयल्टी मुक्त उपलब्ध कराने पर सहमति जताई गयी है।
बहरहाल, यह. NET फ्रेमवर्क का हिस्सा नहीं है, जो ईसीएमए (ECMA)/ आईएसओ (ISO) मानक द्वारा कवर नहीं है, इसमें विण्डोज़ फोर्म्ज़ (Windows Forms), ADO.NET, ASP.NET भी शामिल है। पेटेंट की माइक्रोसॉफ्ट धारण के क्षेत्रों में गैर-रोक ढांचे के माइक्रोसॉफ्ट (Microsoft) कार्यान्वयन हो सकते हैं।
3 अक्टूबर 2007 को, माइक्रोसॉफ्ट (Microsoft) ने घोषणा की कि.NET फ्रेमवर्क (.NET Framework) बेस कक्षा लाइब्रेरी के लिए 0}साझा स्रोत माइक्रोसॉफ्ट (Microsoft) संदर्भ लाइसेंस के तहत 2007 के अंत स्रोत कोड (ASP.NET, ADO.NET और विण्डोज़ (Windows) प्रस्तुति फाउंडेशन) कि जगह दृश्य 2008 स्टूडियो के अंतिम रिलीज के साथ उपलब्ध कराया जा रहा है। भविष्य के रिलीज में विंडोज संचार फाउंडेशन (डबल्यू सी एफ (WCF)) सहित अन्य पुस्तकालयों के लिए स्रोत कोड, विण्डोज़ (Windows) कार्यप्रवाह फाउंडेशन (डबल्यू एफ (WF)) और भाषा समन्वित क्वेरी (एलआईएनक्यू (LINQ)) शामिल हो गए॰ माइक्रोसॉफ्ट (Microsoft) संदर्भ लाइसेंस का गैर ओपन स्रोत होने के नाते इस स्रोत कोड का उद्देश्य है केवल डिबगिंग, जो मुख्य रूप से बी सी एल (BCL) के दृश्य स्टूडियो में बीसीएल के एकीकृत डिबगिंग का समर्थन करने के लिए उपलब्ध है।
1990 के दशक के उत्तरार्ध में माइक्रोसॉफ्ट (Microsoft) ने .NET फ्रेमवर्क (.NET Framework) के विकास के लिए मूल रूप से अगली पीढ़ी विण्डोज़ (Windows) सेवा (एन जी डबल्यू एस (NGWS)) शुरू की। 2000 के अंत में .NET 1.0 का बीटा संस्करण जारी किए गए॰ (| वर्ग= विकीटेबल ("wikitable")!संस्करणसंस्करण संख्या!रिलीज़ दिनांक!दृश्य स्टूडियो!विंडोज में डिफ़ॉल्ट .NET फ्रेमवर्क (.NET Framework) की रिलीज की एक और पूरी .NET फ्रेमवर्क (.NET Framework) संस्करण की सूची पर पाया जा सकता है।
यह .NET फ्रेमवर्क (.NET Framework) की पहली रिलीज है जो 13 फ़रवरी 2002 को जारी की गयी और विण्डोज़ 98 (Windows 98), मी (Me), एन टी (NT) 4.0, 2000 और एक्स पी (XP) के लिए उपलब्ध है। मुख्यधारा के इस संस्करण के लिए समर्थन माइक्रोसॉफ्ट (Microsoft) द्वारा 10 जुलाई 2009 में समाप्त हो गया था और विस्तारित समर्थन को 14 जुलाई 2009 को समाप्त किया गया।
यह पहली बड़ी .NET फ्रेमवर्क (.NET Framework) उन्नयन है। यह एक रीडिसट्रीब्युटिद पैकेज या एक सॉफ्टवेयर विकास किट के रूप में अपने आप पर उपलब्ध है और 3 अप्रैल 2003 को प्रकाशित हुआ था। यह माइक्रोसॉफ्ट (Microsoft) दृश्य स्टूडियो . NET के दूसरे रिलीज़ का हिस्सा भी है (दृश्य. NET 2003 स्टूडियो के रूप में जारी). यह.NET फ्रेमवर्क (.NET Framework) का पहला संस्करण है जिसे विंडोज़ ऑपरेटिंग सिस्टम के भाग के रूप में विण्डोज़ सर्वर (Windows Server) 2003 के शिपिंग के साथ शामिल किया जाएगा। मुख्य धारा के लिए। NET फ्रेमवर्क (.NET Framework) 1.1 का समर्थन अक्टूबर 14, 2008 को समाप्त हुए और विस्तारित समर्थन 8 अक्टूबर 2013 को समाप्त होना है। चूँकि .NET 1.1 विण्डोज़ सर्वर (Windows Server) 2003, के एक घटक है, इसका विस्तृत समर्थन NET 1.1 के लिए 2003 सर्वर पर बढ़ाया गया है जो वर्तमान में 14 जुलाई 2015 तक है।2005 दृश्य स्टूडियो, माइक्रोसॉफ्ट (Microsoft) एसक्यूएल (SQL) सर्वर 2005, और बिज़टाक (BizTalk) 2006 के साथ जारी.NET फ्रेमवर्क (.NET Framework) 3.0, पूर्व WinFX (विनएफएक्स) कहा जाता है, 21 नवम्बर 2006 को जारी की गई। यह प्रबंधित कोड एपीआई (APIs) की विण्डोज़ विस्ता (Windows Vista) और विण्डोज़ (Windows) सर्वर का एक अभिन्न अंग हैं और इसमें 2008 ऑपरेटिंग सिस्टम का एक नया सेट शामिल है। यह एक डाउनलोड के रूप में भी विण्डोज़ एक्सपी (Windows XP) एसपी2 (SP2) और विण्डोज़ सर्वर (Windows Server) 2003 के लिए उपलब्ध है। कोई प्रमुख वास्तु परिवर्तन इस रिलीज के साथ शामिल नहीं किए गए हैं;.NET फ्रेमवर्क (.NET Framework) 3.0 क्रम के सामान्य भाषा .NET फ्रेमवर्क (.NET Framework) 2.0 का उपयोग करता है। पिछले प्रमुख .NET रिलीज़ के विपरीत .NET कम्पैक्ट फ्रेमवर्क इस संस्करण के समकक्ष के रूप में जारी नहीं किया गया था।
.NET फ्रेमवर्क (.NET Framework) 3.0 चार नए प्रमुख घटक होते हैं:
.NET फ्रेमवर्क (.NET Framework) 3.5 का संस्करण 19 नवम्बर 2007 को जारी किया गया था, लेकिन इसमें विण्डोज़ सर्वर 2008 (Windows Server 2008) शामिल नहीं है। .NET फ्रेमवर्क (.NET Framework) 3.0 के साथ, 3.5 संस्करण 2.0 संस्करण के सीएलआर (CLR) के रूप में उपयोग करता है। इसका मतलब यह पूरी तरह से नया ढांचा नहीं है, लेकिन सिर्फ 2.0 का ही विस्तार है और वह उसके बिना नहीं चल सकता। इसके अलावा, यह .NET फ्रेमवर्क 2.0 एसपी1 (.NET Framework 2.0 SP1) (.NET फ्रेमवर्क (.NET Framework) 3.5 एसपी1 के साथ 2.0 एसपी2 संस्थापित करता है) और .NET फ्रेमवर्क 3.0 एसपी1 (.NET Framework 3.0 SP1) (.NET फ्रेमवर्क (.NET Framework) 3.0 3.5 एसपी1 के साथ एसपी2) स्थापित करता है, जिसमें संस्करण 2.0 के कुछ तरीकों और बीसीएल वर्गों के गुण हैं, जो ऐसी भाषा समन्वित क्वेरी (एलआईएनक्यू (LINQ)) के रूप में संस्करण 3.5 सुविधा के लिए आवश्यक हैं। हालाँकि इन परिवर्तनों से संस्करण 2.0 के लिए लिखित आवेदन प्रभावित नहीं होते.
पिछले संस्करणों के रूप में, एक नया .NET कम्पैक्ट फ्रेमवर्क 3.5 संगठनों ने मिलकर इस अद्यतन के साथ जारी किया गया ताकि विंडोज़ मोबाइल और विण्डोज़ (Windows) पर अतिरिक्त सुविधाओं के लिए सहायता प्रदान करने के लिए सीई (CE) एंबेडेड उपकरणों के साथ समर्थन दिया जा सके।
बेस कक्षा पुस्तकालय के इस संस्करण में स्रोत कोड आंशिक रूप से (केवल डिबगिंग के लिए) माइक्रोसॉफ्ट (Microsoft) संदर्भ स्रोत लाइसेंस के अंतर्गत जारी किए गए हैं।.NET फ्रेमवर्क (.NET Framework) 3.5 Service Pack 1 11 अगस्त 2008 को जारी की गई। इस रिलीज में नयी कार्यशीलता और कुछ शर्तों के अधीन कार्य निष्पादन में सुधार, प्रदान किया जाता है खासकर डबल्यूपीएफ (WPF) के साथ जहां 20-45% सुधार की संभावना है। दो नए आंकड़ों का सेवा घटक जोड़ा गया है, ADO.NET इकाई की रूपरेखा और ADO.NET डेटा सेवाएँ. दो वेब विकास, प्रणाली के लिए नए असेंबली.वेब [Web].अमूर्त और सिस्टम.वेब [Web].अनुमार्गण, जोड़ दिया गया है; और ASP.NET एमवीसी (MVC) फ्रेमवर्क में इस्तेमाल किया जाता है और कथित तौर पर ASP.NET आवेदन फार्मों के भविष्य के रिलीज में उपयोग किया जाएगा। सर्विस पैक 1 एसक्यूएल सर्वर 2008 और दृश्य 2008 सर्विस पैक 1 स्टूडियो के साथ शामिल है। यह नियंत्रण का एक नया सेट फ़ीचर "दृश्य मूल पावर पैक" भी कहा जाता है जो दृश्य मूल नियंत्रण जैसे "पंक्ति" और "आकार" के रूप में वापस लाया गया है।
.NET फ्रेमवर्क (.NET Framework) एसपी1 (SP1) के लिए वहाँ भी .NET फ्रेमवर्क (.NET Framework) का एक नया संस्करण है, "।NET फ्रेमवर्क (.NET Framework) ग्राहकों का प्रोफाइल" कहा जाता है, जिस पर 28 MB महत्त्वपूर्ण पूरे ढांचे से छोटा घटक है जो कि अधिकांश डेस्कटॉप अनुप्रयोग के लिए प्रासंगिक हैं। हालांकि, ग्राहक इस आकार के प्रोफाइल मात्रा तभी स्थापित कर सकते हैं यदि वे विण्डोज़ एक्सपी एसपी2 (Windows XP SP2) पर ऑनलाइन संस्थापक का इस्तेमाल कर रहे हैं और कोई दूसरी .NET व्यवस्थाएं स्थापित न हों. जब ऑफलाइन संस्थापक या किसी अन्य ऑपरेटिंग सिस्टम का प्रयोग किया जा रहा हो, तो डाउनलोड आकार अभी तक 250 एमबी है।
माइक्रोसॉफ्ट (Microsoft) ने .NET Framework 4 की घोषणा 29 सितम्बर 2008 को की। Public Beta 20 मई 2009 को जारी किया गया। इस रिलीज की कुछ मुख्या बातें हैं:
28 जुलाई 2009 को। NET फ्रेमवर्क (.NET Framework) 4 बीटा एक second release में प्रायोगिक सॉफ्टवेयर व्यवहार स्मृति के समर्थन के साथ उपलब्ध था। इस कार्यशीलता के ढांचे के अंतिम संस्करण में उपलब्ध होने के बारे में पुष्टि नहीं की गई है।
19 अक्टूबर 2009 को, माइक्रोसॉफ्ट का .NET फ्रेमवर्क (.NET Framework) 4. बीटा 2 जारी किया गया इसी समय, माइक्रोसॉफ्ट के लिए। NET फ्रेमवर्क (.NET Framework) 4 मार्च 22, 2010 को जारी करने की उम्मीद की घोषणा की गयी। इस प्रक्षेपण तारीख को बाद में 12 अप्रैल 2010 तक स्थगित कर दिया गया है।
प्रकाशन दिनाँक: 2/10/2010 Version:RC
.NET फ्रेमवर्क (.NET Framework) 4 इंच के साथ मिलकर, माइक्रोसॉफ्ट (Microsoft) वृद्धि का एक सेट की पेशकश, "डबलिन" कूटनाम, Windows Server 2008 आवेदन सर्वर क्षमताओं के लिए डबलिन आईआईएस बढ़ाने के लिए एक "अनुप्रयोगों के लिए मानक मेजबान" होगा और जो डबल्यूसीएफ (WCF) या डबल्यूएफ (WF) प्रयोग करता है।
4.0 ASP.NET में एचटीएमएल, जेस्क्रिप्ट टुकड़े, नए विकास प्रोफाइल, फार्म का उपयोग, अनेबलपर्सिसटिडसिलेक्शन उत्पन्न, परिवर्तन web.config, सत्र मूल्यों के लिए संपीड़न सक्षम करने आदि कई नई सुविधाएँ हैं। नई सुविधाओं की अधिक जानकारी सीएलआई (CLI) और .NET भाषाओं जैसे C और वीबी (VB) के रूप में सन (Sun) का जेवीएम (JVM) और जावा (Java) के लिए कई समानताएं हैं। दोनों एक आभासी मशीन मॉडल पर आधारित हैं जो कंप्यूटर हार्डवेयर, जिस पर उनके कार्यक्रम चलाने का ब्यौरा है, को छिपती हैं। दोनों अपने स्वयं के मध्यवर्ती बाइट-कोड का उपयोग करते हैं। माइक्रोसॉफ्ट उनकी साझा मध्यवर्ती भाषा (सीआईएल (CIL); पूर्व एमएसआईएल (MSIL)) और सूर्य उनके फोन जावा बाईटकोड को कॉल करती है। .NET पर बाइट-कोड हमेशा क्रियान्वयन से पहले संकलित होता है, या तो बस समय पर (जेआईटी (JIT)) या निष्पादन के अग्रिम में मूल छवि जेनरेटर उपयोगिता (एनजीईएन (NGEN)) के प्रयोग से. जावा के साथ बाइट-कोड या व्याख्या अग्रिम में संकलित या जेआईटी (JIT) संकलित है। दोनों व्यापक श्रेणी के पुस्तकालयों की कई आम प्रोग्रामिंग आवश्यकताओं पता और सुरक्षा मुद्दों कि दूसरे दृष्टिकोण में मौजूद कई पते प्रदान करते हैं। .NET फ्रेमवर्क (.NET Framework) में प्रदान की नेमस्पेस जावा ई एपीआई (API) विवरण में मंच शैली और मंगलाचरण में संकुल के समान है।
अपनी पूर्ण रूप में नेट. (यानी, माइक्रोसॉफ्ट के कार्यान्वयन, मानकीकरण और इस अनुच्छेद के लाइसेंस अनुभाग) में वर्णित केवल एक माइक्रोसॉफ्ट विण्डोज़ ऑपरेटिंग सिस्टम पर स्थापित किया जा सकता है जबकि उसकी संपूर्णता में जावा चल रहे कंप्यूटर पर जैसे लिनक्स (Linux), सोलरिस (Solaris) मैक ओएस या विण्डोज़ ऑपरेटिंग सिस्टम के रूप में विभिन्न प्रकार के कंप्यूटर पर किसी एक भाग में स्थापित होगा। इसकी शुरुआत से ही NET. एकाधिक प्रोग्रामिंग भाषाओं का समर्थन करता है और इसकी मुख्य मंच पर नास्तिक और मानकीकृत दूसरे प्लेटफार्मों पर लागू करने तक रहता है (हालांकि माइक्रोसॉफ्ट के कार्यान्वयन ही लक्ष्य विण्डोज़ (Windows), विण्डोज़ सीई (Windows CE) और एक्सबॉक्स (Xbox) प्लेटफार्म ताकि अन्य विक्रेताओं द्वारा इसे क्रियान्वित किया जा सके। जावा वर्चुअल मशीन को भी दोनों भाषा और ऑपरेटिंग सिस्टम नास्तिक और नारा "लिखें के साथ शुरू किया गया था जो क़ी एक बार, कहीं चला जानेवाला डिजाइन था" जबकि जावा लंबे समय से एक व्यापक अंतर से JVM पर सबसे अधिक भाषा का इस्तेमाल करता रह गया है, गतिशील भाषाओं के लिए हाल ही में इसके समर्थन विकल्पों की लोकप्रियता बढ़ गया है, विशेष रूप से जेरूबी (JRuby), सकाला (Scala), और ग्रूवी (Groovy) में. (जेवीएम (JVM) भाषाओं को देखें).
सन जावा के संदर्भ कार्यान्वयन (वर्ग पुस्तकालय, संकलक सहित, आभासी मशीन है और विभिन्न जावा प्लेटफार्म से जुड़े उपकरणों) क्लासपाथ अपवाद के साथ जीएनयू (GNU) जीपीएल (GPL) लाइसेंस के अंतर्गत खुला स्रोत है। .NET फ्रेमवर्क (.NET Framework) आधार वर्ग के पुस्तकालय के लिए स्रोत कोड उपलब्ध है जो केवल माइक्रोसॉफ्ट (Microsoft) संदर्भ लाइसेंस के अंतर्गत संदर्भ उद्देश्यों के लिए है।
तीसरी पार्टी मोनो परियोजना, नोवेल द्वारा प्रायोजित ईसीएमए (ECMA) मानकों .NET फ्रेमवर्क (.NET Framework) का हिस्सा हैं जो एक खुला स्रोत कार्यान्वयन विकसित करता है, जैसा कि अन्य अधिकतर ईसीएमए (ECMA) माइक्रोसॉफ्ट के .NET मानकीकृत में पुस्तकालयों के रूप में होता है। मोनो कार्यान्वयन का मतलब लिनक्स (Linux) सोलरिस (Solaris), मैक ओएस एक्स, बीएसडी, एचपी-यूएक्स (HP-UX) और विण्डोज़ (Windows) प्लेटफार्मों के लिए रन करना है। मोनो में सीएलआर (CLR) वर्ग पुस्तकालय और C# और VB.NET. के लिए संकलक शामिल हैं। वर्तमान संस्करण माइक्रोसॉफ्ट .NET के 2.0 संस्करण में सभी एपीई (APIs) का समर्थन करता है। इसका पूरा समर्थन सी # 3.0 एलआईएनक्यू (LINQ) के लिए वस्तुएँ और एलआईएनक्यू (LINQ) एक्सएमएल (XML) के लिए मौजूद है।
. नेट में शामिल कुछ चिंताएं और आलोचना से संबंधित हैं:
.NET फ्रेमवर्क (.NET Framework) माइक्रोसॉफ्ट के .NET प्रौद्योगिकियों के प्रमुख कार्यान्वयन है। ढांचे के भागों के लिए अन्य कार्यान्वयन मौजूद हैं। हालांकि एक ईसीएमए/आईएसओ विनिर्देशन द्वारा वर्णित क्रम इंजन के अन्य कार्यान्वयन को पेटेंट मुद्दों से भारग्रस्त किया जा सकता है; आईएसओ मानक / अस्वीकृति शामिल हो सकते हैं, इस दस्तावेज़ के तत्वों में से कुछ का विषय पेटेंट अधिकार हो सकता है संभावना के लिए तैयार सावधान रहना होता है। आईएसओ (ISO) किसी एक या सभी तरह पेटेंट अधिकारों की पहचान के लिए जिम्मेदार नहीं 'होगा आधार वर्ग पुस्तकालय (बीसीएल (BCL)) के लिए विकल्प का विकास अधिक मुश्किल है, जो एक खुला मानक से वर्णित नहीं है और हो कॉपीराइट प्रतिबंध के अधीन है। इसके अतिरिक्त, बीसीएल (BCL) के कुछ हिस्से विण्डोज़-विशिष्ट कार्यक्षमता और व्यवहार है, इसलिए कार्यान्वयन-विण्डोज़ प्लेटफार्म समस्याग्रस्त हो सकता है।
ढांचे के भागों में से कुछ वैकल्पिक कार्यान्वयन यहाँ सूचीबद्ध हैं।