C#- ja .Net-versiohistoria
⚡ Älykäs yhteenveto
C#- ja .NET-versiohistoria tracmiten Microsoft kehitti kieltään ja kehystään vuoden 2002 julkaisusta .NET Framework 1.0 ja C# 1.0 aina moderniin, monialustaiseen .NET 10:een ja C# 14:ään vuonna 2025.

.Net Framework -versiohistoria
.Net Frameworkin ensimmäinen versio julkaistiin vuonna 2002. Version nimi oli .Net Framework 1.0. .Net Framework on kehittynyt paljon siitä lähtien, ja uusin versio on 4.8.1, joka julkaistiin vuonna 2022. Uudempi kehitys on sittemmin siirtynyt alustojen väliseen .NET-alustalle (aiemmin .NET Core).
Alla on taulukko julkaistuista .Net Framework -versioista julkaisupäivineen. Jokaisessa versiossa on olennaisia muutoksia kehykseen.
Esimerkiksi viitekehyksessä 3.5 ja siitä eteenpäin käytetään keskeistä viitekehystä nimeltä Kokonaisuuden puitteet julkaistiin. Tätä viitekehystä käytetään muuttamaan lähestymistapaa, jolla sovelluksia kehitetään työskenneltäessä tietokannat.
| Versionumero | CLR versio | Julkaisupäivä |
|---|---|---|
| 1.0 | 1.0 | 2002-02-13 |
| 1.1 | 1.1 | 2003-04-24 |
| 2.0 | 2.0 | 2005-11-07 |
| 3.0 | 2.0 | 2006-11-06 |
| 3.5 | 2.0 | 2007-11-19 |
| 4.0 | 4 | 2010-04-12 |
| 4.5 | 4 | 2012-08-15 |
| 4.5.1 | 4 | 2013-10-17 |
| 4.5.2 | 4 | 2014-05-05 |
| 4.6 | 4 | 2015-07-20 |
| 4.6.1 | 4 | 2015-11-17 |
| 4.6.2 | 4 | 2016-08-02 |
| 4.7 | 4 | 2017-04-05 |
| 4.7.1 | 4 | 2017-10-17 |
| 4.7.2 | 4 | 2018-04-30 |
| 4.8 | 4 | 2019-04-18 |
| 4.8.1 | 4 | 2022-08-09 |
Suurin etu .Net puitteet on se, että se tukee Windows alusta, jolla lähes kaikki työskentelevät. Microsoft varmistaa aina, että .Net-kehykset ovat kaikkien tuettujen vaatimusten mukaisia Windows käyttöjärjestelmät.
Versio 4.8.1 on .Net Frameworkin viimeinen merkittävä julkaisu. Sitä tuetaan edelleen sisäänrakennettuna. Windows komponentti, mutta Microsoft tarjoaa nyt uusia ominaisuuksia vain alla kuvatun modernin .NET-alustan kautta.
C#-versiohistoria
C# on kehittynyt viitekehyksen rinnalla, ja lähes jokaisessa julkaisussa on tullut merkittäviä kieliominaisuuksia. Alla oleva taulukko yhdistää jokaisen C#-version sen .NET-alustalle ja Visual Studio -julkaisulle sekä sen esittelemät tärkeimmät ominaisuudet.
| Versio | .NET / Kehys | Visual Studio | Tärkeitä ominaisuuksia |
|---|---|---|---|
| C # 1.0 | .NET Framework 1.0 / 1.1 | Visual Studio .NET 2002 | C#:n ensimmäinen julkaisu |
| C # 2.0 | .NET Framework 2.0 | Visual Studio 2005 | Geneeriset tyypit, osittaistyypit, anonyymit metodit, nullable-tyypit, iteraattorit, kovarianssi ja kontravarianssi |
| C # 3.0 | .NET Framework 3.0 / 3.5 | Visual Studio 2008 | Automaattisesti toteutetut ominaisuudet, anonyymit tyypit, kyselylausekkeet, lambda-lausekkeet, lausekepuut, laajennusmetodit |
| C # 4.0 | .NET Framework 4.0 | Visual Studio 2010 | Dynaaminen sidonta, nimetyt/valinnaiset argumentit, yleinen kovarianssi ja kontravarianssi, upotetut interop-tyypit |
| C # 5.0 | .NET Framework 4.5 | Visual Studio 2012/2013 | Asynkroniset jäsenet, soittajan tietojen määritteet |
| C # 6.0 | .NET Framework 4.6 | Visual Studio 2013/2015 | Staattiset tuonnit, poikkeussuodattimet, ominaisuuksien alustajat, lausekepohjaiset jäsenet, null-propagaattori, merkkijonojen interpolointi, nameof-operaattori, sanakirjan alustaja |
| C # 7.0 | .NET Framework 4.6.2 / .NET Core | Visual Studio 2017 | Ulosmuuttujat, tuplet ja dekonstruktio, hahmontunnistus, lokaalit funktiot, ref-lokaalit ja palautukset, lausekerunkoiset jäsenet |
| C # 8.0 | .NET Core 3.0 | Visual Studio 2019 | Nullittavat viittaustyypit, switch-lausekkeet, asynkroniset virrat, oletusrajapintamenetelmät, alueet ja indeksit |
| C # 9.0 | .NET 5 | Visual Studio 2019 | Tietueet, vain init-määrittäjät, ylimmän tason lauseet, kuvioiden yhteensovittamisen parannukset |
| C # 10 | .NET 6 | Visual Studio 2022 | Globaali käyttäen direktiivejä, tiedostoihin rajattuja nimiavaruuksia, tietuerakenteita, vakioina interpoloituja merkkijonoja |
| C # 11 | .NET 7 | Visual Studio 2022 | Raa'at merkkijonoliteraalit, pakolliset jäsenet, yleinen matematiikka, listamallit, UTF-8-merkkijonoliteraalit |
| C # 12 | .NET 8 | Visual Studio 2022 | Ensisijaiset konstruktorit, kokoelmalausekkeet, rivikohtaiset taulukot, valinnaiset lambda-parametrit, minkä tahansa tyyppiset aliakset |
| C # 13 | .NET 9 | Visual Studio 2022 | params-kokoelmat, uusi lukitustyyppi, \e-koodinvaihtosekvenssi, implisiittinen indeksikäyttö, ref ja unsafe iteraattoreissa |
| C # 14 | .NET 10 | Visual Studio 2022 | Laajennusjäsenet, kentän avainsana, null-ehdollinen määritys, implisiittiset span-muunnokset, tiedostopohjaiset sovellukset |
Mitä eroa on .NET Frameworkin ja .NET Coren välillä?
.NET Framework ja .NET Core edustavat saman idean kahta sukupolvea. Vuonna 2002 julkaistu ja versiossa 4.8.1 jäädytetty .NET Framework toimii vain Windows ja se asennetaan järjestelmäkomponenttina. Vuonna 2016 julkaistu .NET Core on täysin uudelleenkirjoitettu versio, joka toimii Windows, Linux ja macOSVersiosta 5 eteenpäin Microsoft poisti sanan ”Core” ja nimesi tuotteen yksinkertaisesti ”.NET”, ohitaping numero 4, jotta vältetään sekaannukset vanhemman viitekehyksen kanssa.
Tärkeimmät erot ovat:
- Platform: .NET Framework on Windows-vain, kun taas moderni .NET on monialustainen.
- Lähdemalli: Moderni .NET on täysin avoimen lähdekoodin ja kehitetty avoimesti GitHubissa.
- Asennus: Moderni .NET tukee rinnakkaisversioita ja itsenäisiä sovelluksia; konetta kohden voi olla vain yksi .NET Framework 4.x.
- Suorituskyky: Nykyaikaisen .NETin takana oleva CoreCLR-ajonaikainen ympäristö on nopeampi lähes kaikissa läpimenomittauksissa.
- tulevaisuutta: .NET Framework saa vain tietoturvakorjauksia, kun taas moderni .NET saa kaikki uudet ominaisuudet.
.NET Framework -version tarkistaminen
Asennettu versio auttaa varmistamaan yhteensopivuuden ennen sovelluksen suorittamista tai rakentamista. Windows Voit tarkistaa asennetun .NET Framework -version useilla tavoilla:
- Rekisterieditori: avoin regedit ja navigoida HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Frameworkin asennus\NDP\v4\Full. Vapauta DWORD viittaa versioon; esimerkiksi 528040 tai uudempi tarkoittaa versiota 4.8 ja 533320 tai uudempi tarkoittaa versiota 4.8.1.
- Komentorivi: ajaa rekisterikysely “HKLM\SOFTWARE\Microsoft\Net Frameworkin asennus\NDP\v4” /s versioavainten listaamiseksi.
- PowerShell: ajaa Get-ItemProperty “HKLM:\SOFTWARE\”Microsoft\NET Frameworkin asennus\NDP\v4\Full” | Valitse-Objekti -julkaisu ja vertaa numeroa viralliseen karttaanping.
- Tiedostonhallinta: avoin C: \Windows\Microsoft.NET\Framework, anna korkein v4.0.30319 kansiota, napsauta hiiren kakkospainikkeella mitä tahansa DLL-tiedostoa ja lue tuoteversio.
Tarkistaaksesi modernin .NETin Frameworkin sijaan, avaa pääte ja suorita dotnet –list-sdks ja dotnet –list-runtimestai dotnet-versio aktiiviselle SDK:lle. Nämä komennot toimivat Windows, Linux ja macOS.
Kuinka usein uusia C#- ja .NET-versioita julkaistaan?
.NET 5:stä lähtien vuonna 2020 Microsoft on julkaissut merkittävän .NET-julkaisun joka marraskuu, ja jokainen niistä toimitetaan vastaavan C#-kieliversion kanssa. Tämä ennustettava vuosittainen aikataulu korvasi vanhan .NET Framework -aikakauden hitaamman ja epäsäännöllisemmän aikataulun.
Julkaisut seuraavat kahta tukea tracks:
- Pitkäaikainen tuki (LTS): Parilliset julkaisut, kuten .NET 8 ja .NET 10, saavat kolmen vuoden korjauspäivitykset ja niitä suositellaan tuotantokäyttöön.
- Vakioaikainen tuki (STS): Parittomat versiot, kuten .NET 9, saavat 18 kuukauden tuen ja sopivat ihanteellisesti uusimpien ominaisuuksien käyttöönottoon varhaisessa vaiheessa.
.NET Framework ei noudata tätä kaavaa lainkaan. Se pysähtyi versioon 4.8.1 ja pysyy samana, joten versiovaihto koskee nyt vain modernia .NET-linjaa ja sen C#-julkaisuja.
