Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 50988|Svar: 8

[Kilde] C# 10 Ny syntaks global ved brug af global citation

[Kopier link]
Opslået på 20/11/2021 10.55.01 | | | |
Brugsdirektivet tillader brug af en type defineret i et navnerum uden at specificere et fuldt kvalificeret navnerum for den type. Tilføjelse af den globale modifikator til using direktivet betyder, at using vil blive anvendt på alle filer i kompileringen (normalt et projekt). Den globale using directive blev tilføjet til C# 10. Syntaksen er:

Den anbefalede praksis er at lægge den globale import i en separat fil (én for hvert projekt), f.eks. kan den hedge:GlobalUsings.csFil.

Microsofts officielle dokumentationsintroduktion:Hyperlink-login er synlig.

Vi lægger det navnerum, som Startup.cs refererer til, ind i GlobalUsings.cs-filen og husker at tilføje, før vi bruger detGlobaltNøgleord!! Koden er som følger:


På dette tidspunkt vil compileren rapportere en fejl, der siger, at "funktionen global med kommandoen ikke er tilgængelig i C# 8.0, brug venligst sprogversion 10.0 eller nyere", som vist i figuren nedenfor:



I dette tilfælde, hvis vi tager ASP.NET Core 3.1-projektet som eksempel, behøver du blot dobbeltklikke på projektet (.csproj-filen) og tilføje LangVersion til Project-> PropertyGroup-noden, som vist i følgende figur:





Denne sætning betyder, at projektet bruger syntaksen fra C# 10 i forhold til C#-sprogversionering:Hyperlink-login er synlig.

Filen rapporteres samtidig ikke som en fejlStartup.cs Navnerummet, som filen refererer til, er gråtonet, som vist i figuren nedenfor:



Vi fjerner referencerne til Program.cs, Startup.cs og genkompilerer derefter projektet som vist på billedet nedenfor:



brugILSpy_binaries_7.2.0.6702-preview2Den resulterende WebApplication1.dll-fil dekompileres som vist på følgende billede:



Startfilen har stadig referencer, og der genereres ingen GlobalUsings.cs filer, så global brug er bare syntakssukker, hvilket forenkler noget kedeligt programmeringsarbejde og forbedrer arbejdseffektiviteten betydeligt.

.NET 6Implicitte navnerumReferencer opnås også ved brug af funktionen global using.

I øjeblikket tilføjes forskellige standardnavnerum for forskellige SDK-typer, og de eksisterende er som følger:

For Microsoft.NET.Sdk er standardnavnerummet som følger:


For Microsoft.NET.Sdk.Web:

For Microsoft.NET.Sdk.Worker:

Hvis du vil deaktivere implicitte navnerumsreferencer, kan du deaktivere denne funktion helt via DisableImplicitNamespaceImports, som følger:

Hvis du bare vil deaktivere referencer til Microsoft.NET.Sdk.Web, kan du konfigurere DisableImplicitNamespaceImports_Web som følger:

Lad os oprette et nyt .NET 6.0 konsolprojekt til test, og hele projektet har kun Program.cs én fil, som vist i figuren nedenfor:



ConsoleApp1.csproj er konfigureret som følger:

Hvor er direktivet om global brug? Åbn obj-mappen (som indeholder de mellemliggende midlertidige filer genereret under kompileringsprocessen) og find den i Debug\net6.0-mappenConsoleApp1.GlobalUsings.g.csFil:



ConsoleApp1.GlobalUsings.g.cs filer genereres automatisk baseret på projektets ImplicitUsings-egenskabsindstillinger.

(Slut)




Tidligere:Visual Studio 2022 Enterprise Edition download- og installationsvejledning
Næste:Praktisk brug af Nginx reverse proxy til Windows Remote Desktop
Opslået på 21/11/2021 19.26.44 |
Nye ting, lær og lær
Opslået på 21/11/2021 23.09.21 |
Kom og lær igen。。。。。。
Opslået på 01/12/2021 10.07.39 |
Wei Wu
Opslået på 08/02/2022 09.28.46 |

Nye ting, lær og lær
Opslået på 08/02/2022 09.29.19 |


Nye ting, lær det
 Udlejer| Opslået på 12/03/2022 17.52.27 |
Fjern en af standardreferencerne og rediger projektfilen med følgende kode:

 Udlejer| Opslået på 19/03/2022 20.57.25 |
Filsti: "C:\Program Files\dotnet\sdk\6.0.200\Sdks\Microsoft.NET.Sdk.Web\Sdk\Sdk\Sdk.props"

Opslået på 20/02/2023 16.23.50 |
666 Opdagelsen af den nye verden
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com