Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 33299|Vastaus: 2

[.NET Core] Uudet .NET Core -ominaisuudet julkaisevat yksittäisen tiedoston suoritettavan tiedoston

[Kopioi linkki]
Julkaistu 2019-9-28 16:38:47 | | | |
Muutama päivä sitten Microsoft julkaisi .NET Core 3.0:n, ja yksi suurimmista parannuksista on tuki Windows-työpöytäsovelluksille (vain Windows). Käyttämällä .NET Core 3.0 SDK Windows Desktop Componentia voit portata Windows Forms- ja Windows Presentation Foundation (WPF) -sovelluksia. Selvennykseksi: Windowsin työpöytäkomponentit ovat tuettuja ja sisältyvät vain Windowsiin.

SDK-latausosoite:Hyperlinkin kirjautuminen on näkyvissä.

Linkkejä .NET Core -ominaisuuksien esittelyyn:

Hyperlinkin kirjautuminen on näkyvissä.
Hyperlinkin kirjautuminen on näkyvissä.

Ominaisuuksiin kuuluvat seuraavat:

  • Käytä C#:a rakentaaksesi rikkaita, interaktiivisia asiakasverkkosovelluksia.
  • Käytä gRPC:tä luodaksesi suorituskykyisiä taustapalveluita.
  • SignalR tukee nyt automaattista uudelleenyhteyttä ja asiakas-palvelin-virtoja.
  • Käytä OpenAPI-dokumentaatiota vahvasti tyypitetyn asiakaskoodin tuottamiseen Web-API:lle.
  • Päätepisteiden reititys integroidaan kehyksen kautta.
  • Kestrelissä HTTP/2 on oletuksena käytössä.
  • Integroitu verkko-API ja yksisivuinen sovelluksen todennustuki.
  • Varmenteet ja Kerberos-tunnistautuminen ovat tuettuja.
  • Integroi uusi System.Text.Json -sarjaloisto.
  • Uusi universaali isännöinti luo yhteisiä hallittuja palveluita, kuten riippuvuuksien injektion, konfiguroinnin ja lokimisen.
  • Uusi Worker Service -mallipohja pitkäaikaisten palveluiden rakentamiseen.
  • Uusia EventLaskureita luodaan pyynnöille sekunnissa, kokonaismäärälle, ajantasaisille ja epäonnistuneille pyynnöille.
  • IIS:ssä isännöidyt käynnistysvirheet raportoidaan nyt Windowsin tapahtumalokille.
  • Pyydä putkistointegraatiota System.IO.Pipelines.
  • Suorituskyvyn parannuksia koko teknologiapinossa.

Luodaan uusi .NET Core 3.0 -konsoliprojekti VS 2019:n kanssa, kuten alla olevassa kuvassa näkyy:



Viitaten Newtonsoft.json-pakettiin, kirjoita muutama koodirivi seuraavasti:


Klikkaamme hiiren oikealla VS Regeneratea, avaamme projektin bin-kansion, ja löydämme, että useita tiedostoja syntyy, mukaan lukien :demo1.exe- ja Newtonsoft.Json.dll-tiedostot.



Julkaise yksitiedostoinen suoritettava tiedosto

Menetelmä 1:

Suorita seuraava komento projektihakemistossa:



Avaamme kansion C:\Users\itsvse_pc\source\repos\demo1\demo1\bin\Debug\netcoreapp3.0\win10-x64, ja huomaamme, että paljon dll-tiedostoja on generoitu ja julkaisukansio on olemassa.

Mene julkaisukansioon,Katselu demo1.exe koko on 66M, mikä on sama koko kuin kaikilla kansion ulkopuolisilla tiedostoilla, kuten alla olevassa kuvassa näkyy:



Luotu yksittäinen suoritettava tiedosto sisältää itse asiassa ohjelman suorittamiseen tarvittavan ympäristön, eikä vaadi kohdetietokonetta asentamaan SDK:ta, ja haittapuolena on, että tiedostokoko kasvaa huomattavasti.

Menetelmä 2:

Hiiren oikea klikkaus vs muokkaa projektitiedostoa ja lisää PublishSingleFile-solmukonfiguraatio, koodi on seuraava:

Sitten napsauta hiiren oikealla ja klikkaa "Julkaise"-painiketta.


Assembly-linkit

.NET Core 3.0 SDK sisältää työkalun, joka voi pienentää sovelluksesi kokoa analysoimalla IL:ää ja leikkaamalla käyttämättömiä kokoonpanoja.

Itsenäiset sovellukset sisältävät kaiken, mitä tarvitset koodin ajamiseen ilman, että .NET:n tarvitsee asentaa pääkoneellesi. Monesti sovellus tarvitsee kuitenkin vain murto-osan kehyksestä toimiakseen, ja muita käyttämättömiä kirjastoja voidaan poistaa.

.NET Core sisältää nyt asetuksen, joka skannaa sovelluksesi IL:n IL-linkintyökalulla. Tämä työkalu tunnistaa, mitä koodia tarvitaan, ja leikkaa käyttämättömät kirjastot. Tämä työkalu voi merkittävästi pienentää joidenkin sovellusten käyttöönottokokoa.

Ota tämä työkalu käyttöön käyttämällä <PublishTrimmed> projektisi asetuksia ja julkaisemalla itsenäinen sovellus:

.NET Core CLI


Generoimme juuri 66M tiedoston, ja konfiguroinnin lisäämisen jälkeen,Se kasvoi 35 miljoonaksi, mikä vähensi 30 miljoonan käyttöasteen määrää

Muista harkita sovelluksia tai kehyksiä, jotka käyttävät heijastuksia tai niihin liittyviä dynaamisia ominaisuuksia (mukaan lukien ASP.NET Core ja WPF).Yleensä vaurioituu leikkaamisen aikanaTämä korruptio johtuu siitä, että linkittäjä ei ole tietoinen tästä dynaamisesta käyttäytymisestä eikä pysty määrittämään, mitä kehystyyppejä tarvitaan heijastukseen。 IL-linkkityökalu voidaan konfiguroida havaitsemaan tämä tilanne.

Tärkeintä on, että levität sitä leikkaamisen jälkeenSuorita testejä


(Loppu)






Edellinen:Ratkaise ajaxin kyvyttömyys määrittää arvoja ulkoisille muuttujille
Seuraava:C-kieli on niin voimakas, millä kielellä se on kirjoitettu?
Julkaistu 2019-9-29 09:30:44 |

Kiitos, että jaoit
 Vuokraisäntä| Julkaistu 2019-10-30 09:14:15 |
ReadyToRun-kuva
Sitä voidaan parantaa kääntämällä sovellussarja ReadyToRun (R2R) -muotoon. NET Core -sovelluksen käynnistysaika.

R2R on esikäännetyn (AOT) muoto. R2R-binäärit parantavat käynnistyssuorituskykyä vähentämällä reaaliaikaisten (JIT) kääntäjien työmäärää sovelluksen latautuessa. Binääri sisältää natiivikoodia, joka on samankaltainen kuin mitä JIT tuottaa. Kuitenkin R2R-binäärit ovat suurempia, koska ne sisältävät välikielen (IL) koodia (joka on edelleen tarpeen joissain tapauksissa) sekä saman koodin natiiviversion versiosta. R2R on saatavilla vain, kun julkaiset itsenäisen sovelluksen, joka kohdistuu tiettyyn ajonaikaiseen ympäristöön (RID), kuten Linux x64 tai Windows x64.



Tässä jätämme ensin kommentin ja <PublishTrimmed>lisäämme <PublishReadyToRun>sitten:

Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com