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.

  • ️ Alkuperä: .NET Framework 1.0 ja C# 1.0 julkaistiin yhdessä vuonna 2002 yritykselle Windows kehittämiseen.
  • 🧱 .NET Framework: Windows-only-linja saavutti version 4.8.1 vuonna 2022 ja saa nyt vain tietoturvakorjauksia.
  • 🔀 Vaihto: .NET Core, myöhemmin nimetty uudelleen .NET:iksi, korvasi Frameworkin alustojen välisellä, avoimen lähdekoodin suoritusympäristöllä.
  • 🆕 Uusin julkaisu: .NET 10 ja C# 14 saapuivat marraskuussa 2025 pitkäaikaisen tuen versioina.
  • 💡 C#:n kasvu: Jokainen julkaisu lisäsi ominaisuuksia, kuten geneeriset ominaisuudet, async/wait-ominaisuuden, tietueet ja ensisijaiset rakentajat.
  • 🤖 Tekoälyn merkitys: ML.NET, ONNX Runtime ja GitHub Copilot tuovat koneoppimisen ja tekoälyn tuen moderniin C#:aan.

C#- ja .NET-versiohistoria

.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.

UKK

C# 14 on uusin versio, joka julkaistiin 11. marraskuuta 2025 .NET 10:n rinnalla. Se lisäsi laajennusjäseniä, field-avainsanan, null-ehdollisen sijoituksen ja implisiittiset span-muunnokset. Koska .NET 10 on pitkäaikaisen tuen versio, C# 14 on vakaa valinta uusille projekteille.

Joo. .NET Framework 4.8.1:tä tuetaan edelleen Windows käyttöjärjestelmäkomponentti ja saa tietoturva- ja luotettavuuskorjauksia. Kuitenkin Microsoft ei lisää siihen uusia ominaisuuksia, joten suurin osa uudesta kehitystyöstä kohdistuu moderniin .NETiin Frameworkin sijaan.

Valitse uusiin projekteihin moderni .NET, tällä hetkellä .NET 10. Se on monialustainen, nopeampi, avoimen lähdekoodin ja aktiivisesti kehitetty. Varaa .NET Framework olemassa olevien ylläpitoon. Windows-vain sovellukset, jotka ovat riippuvaisia ​​uudemmista alustakirjastoista, joita se ei tue.

Pitkäaikaisen tuen (LTS) julkaisut, kuten .NET 8 ja .NET 10, saavat korjauspäivityksiä kolmeksi vuodeksi. Vakiotuen (STS) julkaisut, kuten .NET 9, saavat 18 kuukautta. Microsoft julkaisee yhden pääversion .NETistä joka marraskuu, vuorotellen näiden kahden välillä.

Microsoft poistettiin sana Core .NET 5:stä vuonna 2020 viestiäkseen yhdestä yhtenäisestä alustasta. Versio nousi versiosta 3.1 versioon 5, ohitaping 4, jotta vältetään sekaannus .NET Framework 4.x:n kanssa. Siitä lähtien tuotetta kutsutaan yksinkertaisesti .NETiksi.

Visual Studio 2022 tukee täyttä .NET Frameworkia versioon 4.8.1 asti ja kaikkia moderneja .NET-julkaisuja .NET 10:een asti C# 14:llä. Vanhemmat versiot, kuten Visual Studio 2019, kattavat C# 8:n ja sitä vanhemmat Framework-versiot.

Kyllä. ML.NET kouluttaa ja suorittaa malleja suoraan C#:lla, ja ONNX Runtime suorittaa esikoulutettuja syväoppimismalleja. Microsoft.Extensions.AI-kirjastot yhdistävät .NET-sovellukset laajoihin kielimalleihin, joten voit lisätä älykkäitä ominaisuuksia poistumatta ekosysteemistä.

Kyllä. GitHub Copilot suosittelee C#-koodia Visual Studion sisällä ja VS Code ja voi auttaa projektien päivittämisessä .NET-versioiden välillä. Käsittele sen tulosta ensimmäisenä luonnoksena ja tarkista se, koska luodusta koodista saattaa puuttua versiokohtaisia ​​API-rajapintoja tai reunatapauksia.

Tiivistä tämä viesti seuraavasti: