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

Nézet: 50988|Válasz: 8

[Forrás] C# 10 Új szintaxis globális globális hivatkozással

[Linket másol]
Közzétéve 2021. 11. 20. 10:55:01 | | | |
A using direktíva lehetővé teszi egy névtérben definiált típus használatát anélkül, hogy teljesen minősített névteret határozna meg az adott típusra. A globális módosító hozzáadása a using utasításhoz azt jelenti, hogy a using minden fájlra alkalmazzák a fordításban (általában egy projektben). A globális használati utasítást hozzáadták a C# 10-hez. A szintaxis a következő:

A javasolt gyakorlat, hogy a globális importot külön fájlba helyezzük (minden projekthez egyet), például elnevezhető:GlobalUsings.csFájl.

Microsoft hivatalos dokumentáció bevezetése:A hiperlink bejelentkezés látható.

A Startup.cs által hivatkozott névteret a GlobalUsings.cs fájlba helyezzük, emlékezve a hozzáadásra a használat előttGlobálisKulcsszavak!! A kódex a következő:


Ekkor a fordító hibát jelent, miszerint "a globális funkció parancs használatával nem elérhető C# 8.0-ban, kérjük, használjuk a 10.0-s vagy újabb nyelvverziót", ahogy az alábbi ábrán látható:



Ebben az esetben, ha a ASP.NET Core 3.1 projektet vegyük példaként, csak dupla kattintást kell a projektre (.csproj fájl), és hozzáadni a LangVersion-t a Project-> PropertyGroup csomóponthoz, ahogy az alábbi ábrán látható:





Ez a mondat azt jelenti, hogy a projekt a C# 10 szintaxisát használja a C# nyelvi verziózásra vonatkozóan:A hiperlink bejelentkezés látható.

A fájlt ugyanebben az időben nem jelentik hibákéntStartup.cs A fájl által hivatkozott névtér szürkével van kirajzolva, ahogy az alábbi ábrán látható:



Eltávolítjuk a Program.cs, Startup.cs hivatkozásait, majd újrafordítjuk a projektet, ahogy az alábbi képen látható:



használILSpy_binaries_7.2.0.6702-preview2A kapott WebApplication1.dll fájl dekompilyálva jelenik meg, ahogy az alábbi képen látható:



A startup fájlban továbbra is vannak használati hivatkozások, és nem generálnak GlobalUsings.cs fájlokat, így a globális használat csak szintaxiscukor, ami leegyszerűsíti néhány fárasztó programozási munkát és jelentősen javítja a munkahatékonyságot.

.NET 6Implicit névterekA hivatkozásokat a globális using funkcióval is elérik.

Jelenleg különböző alapértelmezett névtereket adnak hozzá különböző SDK típusokhoz, és a meglévők a következők:

A Microsoft.NET.Sdk alapértelmezett névtér a következő:


Microsoft.NET.Sdk.Web számára:

Microsoft.NET.Sdk.Worker számára:

Ha be akarod tiltani az implicit névtér hivatkozásokat, ezt a funkciót teljesen letilthatja a DisableImplicitNamespaceImports segítségével, az alábbiak szerint:

Ha csak a Microsoft.NET.Sdk.Web hivatkozásokat szeretnéd letiltani, a DisableImplicitNamespaceImports_Web a következőképpen konfigurálhatod:

Készítsünk egy új .NET 6.0 konzolprojektet tesztelésre, és az egész projektnek csak Program.cs fájlja van, ahogy az alábbi ábrán látható:



ConsoleApp1.csproj a következőképpen van konfigurálva:

Hol van a globális használati irányelv? Nyisd meg az obj könyvtárat (amely a fordítási folyamat során generált köztes ideiglenes fájlokat tartalmazza), és keresd meg a Debug\net6.0 könyvtárbanConsoleApp1.GlobalUsings.g.csFájl:



ConsoleApp1.GlobalUsings.g.cs fájlok automatikusan generálódnak a projekt ImplicitUsings tulajdonságbeállításai alapján.

(Vége)




Előző:Visual Studio 2022 Enterprise Edition letöltés és telepítés tutorial
Következő:A Nginx fordított proxy gyakorlati használata Windows Remote Desktophoz
Közzétéve 2021. 11. 21. 19:26:44 |
Új dolgok, tanulj és tanulj
Közzétéve 2021. 11. 21. 23:09:21 |
Gyere és tanulj újra。。。。。。
Közzétéve 2021. 12. 01. 10:07:39 |
Wei Wu
Közzétéve 2022. 02. 08. 9:28:46 |

Új dolgok, tanulj és tanulj
Közzétéve 2022. 02. 08. 9:29:19 |


Új dolgok, tanuld meg
 Háziúr| Közzétéve 2022. 03. 12. 17:52:27 |
Távolítsd el az alapértelmezett hivatkozások egyikét, és szerkesszük a projektfájlt a következő kóddal:

 Háziúr| Közzétéve 2022. 03. 19. 20:57:25 |
Fájlút: "C:\Program Files\dotnet\sdk\6.0.200\Sdks\Microsoft.NET.Sdk.Web\Sdk\Sdk.props"

Közzétéve 2023. 02. 20. 16:23:50 |
666 Az Új Világ felfedezése
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