Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 50988|Odpověď: 8

[Zdroj] C# 10 Nová syntax globální pomocí globální citace

[Kopírovat odkaz]
Zveřejněno 20.11.2021 10:55:01 | | | |
Direktiva o použití umožňuje použití typu definovaného ve jmenném prostoru bez specifikace plně kvalifikovaného jmenného prostoru pro tento typ. Přidání globálního modifikátoru do směrnice using znamená, že using bude aplikováno na všechny soubory v kompilaci (obvykle projektu). Globální direktiva pro použití byla přidána do C# 10. Syntaxe je:

Doporučenou praxí je vložit globální import do samostatného souboru (jeden pro každý projekt), např. může být pojmenován:GlobalUsings.csSoubor.

Úvod do oficiální dokumentace Microsoftu:Přihlášení k hypertextovému odkazu je viditelné.

Jmenný prostor, na který Startup.cs odkazuje, jsme vložili do souboru GlobalUsings.cs, přičemž jsme nezapomněli přidat před použitímGlobálníKlíčová slova!! Kód je následující:


V tuto chvíli kompilátor hlásí chybu, že "funkce globální using příkaz není dostupná v C# 8.0, použijte prosím jazykovou verzi 10.0 nebo novější", jak je znázorněno na obrázku níže:



V tomto případě, například u projektu ASP.NET Core 3.1, stačí dvakrát kliknout na projekt (soubor .csproj) a přidat LangVersion do uzlu PropertyGroup Project->, jak je znázorněno na následujícím obrázku:





Tato věta znamená, že projekt používá syntaxi C# 10 ohledně verzí jazyka C#:Přihlášení k hypertextovému odkazu je viditelné.

Soubor není zároveň hlášen jako chybaStartup.cs Jmenný prostor na který se soubor odkazuje je šedá, jak je znázorněno na obrázku níže:



Odstraňujeme odkazy na Program.cs, Startup.cs a poté projekt znovu kompilujeme, jak je vidět na obrázku níže:



používatILSpy_binaries_7.2.0.6702-preview2Výsledný WebApplication1.dll soubor je dekompilován, jak je znázorněno na následujícím obrázku:



Spouštěcí soubor stále obsahuje reference na použití a žádné GlobalUsings.cs soubory se negenerují, takže globální použití je jen syntaxový cukr, což zjednodušuje některou zdlouhavou programátorskou práci a výrazně zvyšuje efektivitu práce.

.NET 6Implicitní jmenné prostoryReference jsou také dosaženy pomocí funkce globálního použití.

V současnosti jsou přidávány různé výchozí jmenné prostory pro různé typy SDK a stávající jsou následující:

Pro Microsoft.NET.Sdk je výchozí jmenný prostor následující:


Pro Microsoft.NET.Sdk.Web:

Pro Microsoft.NET.Sdk.Worker:

Pokud chcete zakázat implicitní odkazy na jmenné prostory, můžete tuto funkci zcela vypnout pomocí DisableImplicitNamespaceImports, a to následovně:

Pokud chcete pouze zakázat odkazy na Microsoft.NET.Sdk.Web, můžete DisableImplicitNamespaceImports_Web nastavit následovně:

Vytvoříme nový .NET 6.0 konzolový projekt pro testování a celý projekt má pouze Program.cs jeden soubor, jak ukazuje obrázek níže:



ConsoleApp1.csproj je nakonfigurován následovně:

Kde je globální direktiva o používání? Otevřete adresář obj (který obsahuje mezilehlé dočasné soubory generované během kompilace) a najděte ho v adresáři Debug\net6.0ConsoleApp1.GlobalUsings.g.csSoubor:



ConsoleApp1.GlobalUsings.g.cs soubory jsou automaticky generovány na základě nastavení vlastností ImplicitUsings projektu.

(Konec)




Předchozí:Návod ke stažení a instalaci Visual Studio 2022 Enterprise Edition
Další:Praktické využití reverzního proxy Nginx pro vzdálenou plochu Windows
Zveřejněno 21.11.2021 19:26:44 |
Nové věci, uč se a uč
Zveřejněno 21.11.2021 23:09:21 |
Přijďte se znovu učit。。。。。。
Zveřejněno 01.12.2021 10:07:39 |
Wei Wu
Zveřejněno 08.02.2022 9:28:46 |

Nové věci, uč se a uč
Zveřejněno 08.02.2022 9:29:19 |


Nové věci, nauč se je
 Pronajímatel| Zveřejněno 12.03.2022 17:52:27 |
Odstraňte jednu z výchozích referencí a upravte projektový soubor pomocí následujícího kódu:

 Pronajímatel| Zveřejněno 19.03.2022 20:57:25 |
Cesta k souboru: "C:\Program Files\dotnet\sdk\6.0.200\Sdks\Microsoft.NET.Sdk.Web\Sdk\Sdk.props"

Zveřejněno 20.02.2023 16:23:50 |
Objev Nového světa v roce 666
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com