Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 33299|Válasz: 2

[.NET mag] Az új .NET Core funkciók egy egyfájlos futtatható fájlt adnak ki

[Linket másol]
Közzétéve: 2019-9-28, 16:38:47 | | | |
Néhány nappal ezelőtt a Microsoft kiadta a .NET Core 3.0-t, és az egyik legnagyobb fejlesztés a Windows asztali alkalmazások támogatása (csak Windows). A .NET Core 3.0 SDK Windows Desktop Component használatával port lehet Windows Forms és Windows Presentation Foundation (WPF) alkalmazásokat. Hogy tisztázzuk, a Windows asztali komponensei támogatottak és csak a Windows-on vannak elérhetők.

SDK letöltési cím:A hiperlink bejelentkezés látható.

Linkek a .NET Core funkciók bemutatásához:

A hiperlink bejelentkezés látható.
A hiperlink bejelentkezés látható.

A jellemzők a következők:

  • Használd a C#-ot gazdag, interaktív kliens webalkalmazások építéséhez.
  • Használj gRPC-t nagy teljesítményű backend szolgáltatások létrehozásához.
  • A SignalR most már támogatja az automatikus újrakapcsolódást és az ügyfél-szerver áramlásokat.
  • Használd az OpenAPI dokumentációt erősen típusozott klienskód generálására webes API-khoz.
  • A végpontok útozása a keretrendszeren keresztül integrált.
  • A Kestrel alapértelmezetten engedélyezi a HTTP/2-t.
  • Integrált web API és egyoldalas alkalmazáshitelesítési támogatás.
  • A tanúsítványok és Kerberos hitelesítés támogatott.
  • Integráld az új System.Text.Json serializert.
  • Az új univerzális hoszting közös menedzselt szolgáltatásokat állít be, mint például függőségi injekció, konfigurálás és naplózás.
  • Egy új Munkavállalói Szolgáltatás sablon hosszú távú szolgáltatások építéséhez.
  • Új EventCountereket hoznak létre másodpercenként, összesen, aktuális és sikertelen kérésekhez.
  • Az IIS-ben tárolt indítási hibákat most a Windows Eseménynaplója jelenti.
  • Pipeline integrációt kérj System.IO.Pipelines-en.
  • Teljesítmény javulása az egész technológiai stackben.

Hozzunk létre egy új .NET Core 3.0 konzolprojektet a VS 2019-cel, ahogy az alábbi ábrán látható:



A Newtonsoft.json csomagra hivatkozva írjunk néhány kódsort a következőképpen:


Jobb gombbal kattintunk a VS Regenerate gombra, majd megnyitjuk a projekt bin-könyvtárát, és azt találjuk, hogy több fájl generálódik, köztük :demo1.exe és Newtonsoft.Json.dll fájlok.



Egyetlen fájlos futtatható fájl közzététele

1. módszer:

Futtasd be a következő parancsot a projektkönyvtárban:



Megnyitjuk a C:\Users\itsvse_pc\source\repos\demo1\demo1\bin\Debug\netcoreapp3.0\win10-x64 mappát, és azt találjuk, hogy sok dll fájl generálódott, és van egy közzétételi mappa is.

Menj a közzététel mappába,A néző demo1.exe mérete 66M, ami ugyanannyi, mint a mappán kívüli összes fájl, ahogy az alábbi ábrán látható:



A generált egyetlen futtatható fájl valójában tartalmazza a program futtatásához szükséges környezetet, és nem kell a célszámítógépnek telepítenie az SDK-t, hátránya, hogy a fájlméret nagyon nagy lesz.

2. módszer:

Jobb kattintással vagy a projektfájl szerkesztésével és a PublishSingleFile csomópont konfigurációjának hozzáadásával a kód a következő:

Ezután jobb kattintással és kattints a "Közzététel" gombra.


Közgyűlési hivatkozások

A .NET core 3.0 SDK-hoz egy olyan eszköz tartozik, amely az IL elemzésével és a használatlan összeállítások kivágásával csökkentheti az alkalmazásod méretét.

Az önálló alkalmazások mindent tartalmaznak, amire szükséged van a kód futtatásához anélkül, hogy a .NET telepítenéd a fő számítógépedre. Azonban sokszor az alkalmazásnak csak a keretrendszer egy töredékére van szüksége a futtatáshoz, és más használatlan könyvtárakat is eltávolíthatnak.

A .NET Core most már tartalmaz egy beállítást, amely az alkalmazás IL-jét az IL linker eszközzel szkennázza. Ez az eszköz felismeri, melyik kód szükséges, majd levágja a használatlan könyvtárakat. Ez az eszköz jelentősen csökkentheti egyes alkalmazások telepítési méretét.

Az eszköz engedélyezéséhez használja a <PublishTrimmed> projekt beállításait, és tüntess közzé egy önálló alkalmazást:

.NET Core CLI


Most generáltunk egy 66M fájlt, és a konfiguráció hozzáadása után35 méterre nőtt, így a 30 milliméteres elfoglaltság csökkent

Mindenképp fontolja meg azokat az alkalmazásokat vagy keretrendszereket, amelyek tükröződéseket vagy kapcsolódó dinamikai funkciókat használnak (beleértve a ASP.NET Core-t és a WPF-et).Általában vágás közben sérül megEz a korrupció azért történik, mert a linker nem tud erről a dinamikus viselkedésről, és nem tudja meghatározni, mely kerettípusok szükségesek a visszatükrözéshez。 Az IL linker eszköz konfigurálható úgy, hogy észrevegye ezt a helyzetet.

A legfontosabb, hogy vágás után felvigyékTesztek végrehajtása


(Vége)






Előző:Oldd meg, hogy az ajax nem tud értékeket rendelni külső változókhoz
Következő:A C nyelv olyan erős, milyen nyelven van írva?
Közzétéve: 2019-9-29 09:30:44 |

Köszönöm, hogy megosztottad
 Háziúr| Közzétéve: 2019-10-30 09:14:15 |
ReadyToRun kép
Javítható az alkalmazáskészlet ReadyToRun (R2R) formátumba fordításával. NET Core alkalmazás indítási ideje.

Az R2R egy előre fordított (AOT) formája. Az R2R binárisok javítják az indítási teljesítményt azáltal, hogy csökkentik a valós idejű (JIT) fordítóknak a munkamennyiségét, amikor az alkalmazás betöltődik. A bináris kód natív kódot tartalmaz, hasonlóan ahhoz, amit a JIT generál. Az R2R binárisok azonban nagyobbak, mert köztes nyelvi (IL) kódot tartalmaznak (ami bizonyos esetekben még mindig szükséges) és ugyanannak a kódnak egy natív változatát. Az R2R csak akkor érhető el, ha egy önálló alkalmazást publikálsz, amely egy adott futási környezetet (RID) céloz, például Linux x64 vagy Windows x64.



Itt először hagyjuk a hozzászólást, <PublishTrimmed>majd <PublishReadyToRun>hozzáadjuk:

Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com