Die Microsoft .NET Framework is 'n sagtewarekomponent wat deel vorm van die Microsoft Windows bedryfstelsel. Dit bestaan uit 'n groot versameling van voorafgeskrewe oplossings tot algemene programvereistes en bestuur die uitvoer van programme wat spesifieke ontwikkel is vir die raamwerk. Die .NET Framework is een van Microsoft se kernaanbiedinge en is die gedagte is dat dit gebruik sal word deur die meeste nuwe toepassings wat vir die Windows-platform ontwikkel word.
Programme wat geskryf is vir die .NET Framework loop in 'n sagtewareomgewing wat die program se vereistes tydens uitvoering beheer. Hierdie omgewing wat ook deel is van die .NET Framework, staan bekend as die Common Language Runtime (CLR). Die CLR verskaf 'n virtuele masjien vir toepassings sodat programmeerders nie die vermoë van 'n spesifieke SVE in gedagte hoef te hou nie. Die CLR verskaf ook ander belangrike dienste soos sekuriteitsmeganismes, geheuebestuur en fouthantering. Die klasversameling en die CLR maak saam die .NET Framework uit.
Rekenaartaalonafhanklikheid - Die .NET Framework stel 'n Common Type System of CTS bekend. Die CTS spesifikasie definieer alle moontlike datatipes en programmeerkonstrukte wat deur die CLR ondersteun word en hoe hulle mag of nie met mekaar mag interaksie hê nie. Vanweë hierdie kenmerk ondersteun die .NET Framework ontwikkeling in 'n verskeidenheid rekenaartale.
Die intermediêre CIL-kode word in .NET assemblies gehuisves. Die spesifikasie skryf voor dat assemblies in die Portable Execution-formaat gestoor word, wat dieselfde is vir alle DLL en EXE lêers op die Windows bedryfstelsel. Die assembly bestaan uit een of meer lêers maar elkeen moet die manifes bevat wat die metadata vir die assembly bevat. Die volledige naam van die assembly bevat sy eenvoudige teksnaam, weergawe nommer, kultuur en publiekesleutel datagreep. Die publiekesleutel datagreep bevat 'n unieke hash wat geskep word wanneer die assembly gekompileer word; dus sal twee assemblies met dieselfde publieke sleutel datagreep gewaarborg wees om identies te wees. 'n Privaatsleutel kan ook gespesifiseer word wat slegs aan die skepper van die assembly bekend is en kan gebruik word om te waarborg dat die assembly afkomstig is vanaf dieselfde skrywer wanneer 'n nuwe weergawe van die assembly saamgestel word.
Die Basis klasversameling (Base Class Library of BCL) is 'n versameling van klasse wat aan alle tale beskikbaar is deur die .NET Framework. Die BCL verskaf klasse wat 'n aantal algemene funksies verpak soos die lees- en skryf van lêers, verbeelding van grafika, databasisinteraksie, manipulasie van XML-dokumente ensovoorts.
.NET het sy eie sekuriteitsmeganisme wat twee algemene kenmerke insluit: Code Access Security (CAS) asook kontrole en geldigheidsversekering. Code Access Security is gebaseer op bewyse wat verbind word met 'n spesifieke assembly. Die bewyse is tipies die bron van die assembly. Code Access Security gebruik bewyse om die toestemming wat aan die kode verleen word vas te stel. Ander kode kan vereis dat die kode wat dit aanvra 'n spesifieke toestemming moet hê. Die aanvraag veroorsaak dat die CLR 'n call stack walk uitvoer, elke assembly word nagegaan om te verseker dat elke metode in die call stack die vereiste toestemming het en indien die toestemming nie verleen is nie word 'n sekuriteitsfout gegenereer.