Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 50988|Atsakyti: 8

[Šaltinis] C# 10 Nauja sintaksė "Global" naudojant "Global Citation"

[Kopijuoti nuorodą]
Paskelbta 2021-11-20 10:55:01 | | | |
Naudojimo direktyva leidžia naudoti vardų srityje apibrėžtą tipą, nenurodant to tipo vardų srities. Visuotinio modifikatoriaus pridėjimas prie naudojimo direktyvos reiškia, kad naudojimas bus taikomas visiems kompiliacijos failams (paprastai projektui). Visuotinio naudojimo direktyva buvo pridėta prie C# 10. Sintaksė yra tokia:

Rekomenduojama visuotinį importą sudėti į atskirą failą (po vieną kiekvienam projektui), pvz., jis gali būti pavadintas:GlobalUsings.csFailas.

"Microsoft" oficialios dokumentacijos įvadas:Hipersaito prisijungimas matomas.

Į GlobalUsings.cs failą įdėjome Startup.cs nurodytą vardų sritį, nepamiršdami pridėti prieš naudodamipasaulinisRaktiniai žodžiai!! Kodas yra toks:


Šiuo metu kompiliatorius praneš apie klaidą, nurodydamas, kad "funkcija visuotinė naudojant komandą nėra C# 8.0, naudokite 10.0 ar naujesnę kalbos versiją", kaip parodyta paveikslėlyje žemiau:



Tokiu atveju, atsižvelgiant į ASP.NET Core 3.1 projektą kaip pavyzdį, jums tereikia dukart spustelėti projektą (.csproj failą) ir pridėti LangVersion prie Project-> PropertyGroup mazgo, kaip parodyta šiame paveikslėlyje:





Šis sakinys reiškia, kad projekte naudojama C# 10 sintaksė, susijusi su C# kalbos versijomis:Hipersaito prisijungimas matomas.

Tuo pačiu metu failas nepranešamas kaip klaidaStartup.cs Failo nurodyta vardų sritis yra pilka, kaip parodyta toliau pateiktame paveikslėlyje:



Pašaliname Program.cs, Startup.cs nuorodas ir iš naujo kompiliuojame projektą, kaip parodyta paveikslėlyje žemiau:



naudotiILSpy_binaries_7.2.0.6702-preview2Gautas WebApplication1.dll failas dekompiliuojamas, kaip parodyta šiame paveikslėlyje:



Paleisties failas vis dar turi naudojimo nuorodas, o GlobalUsings.cs failai nėra generuojami, todėl visuotinis naudojimas yra tik sintaksės cukrus, kuris supaprastina kai kuriuos varginančius programavimo darbus ir labai pagerina darbo efektyvumą.

.NET 6Numanomos vardų sritysNuorodos taip pat pasiekiamos naudojant visuotinio naudojimo funkciją.

Šiuo metu skirtingiems SDK tipams pridedamos skirtingos numatytosios vardų sritys, o esamos yra šios:

Microsoft.NET.Sdk numatytoji vardų sritis yra tokia:


For Microsoft.NET.Sdk.Web:

For Microsoft.NET.Sdk.Worker:

Jei norite išjungti numanomas vardų srities nuorodas, galite visiškai išjungti šią funkciją naudodami DisableImplicitNamespaceImports, kaip nurodyta toliau:

Jei norite tiesiog išjungti nuorodas į Microsoft.NET.Sdk.Web, galite sukonfigūruoti DisableImplicitNamespaceImports_Web taip:

Sukurkime naują .NET 6.0 konsolės projektą testavimui, o visame projekte yra tik Program.cs vienas failas, kaip parodyta paveikslėlyje žemiau:



ConsoleApp1.csproj sukonfigūruotas taip:

Kur yra visuotinio naudojimo direktyva? Atidarykite obj katalogą (kuriame yra tarpiniai laikinieji failai, sugeneruoti kompiliavimo proceso metu) ir raskite jį Debug\net6.0 katalogeConsoleApp1.GlobalUsings.g.csFailas:



ConsoleApp1.GlobalUsings.g.cs failai automatiškai generuojami pagal projekto ypatybės ImplicitUsings parametrus.

(Pabaiga)




Ankstesnis:"Visual Studio 2022 Enterprise Edition" atsisiuntimo ir diegimo pamoka
Kitą:Praktinis "Nginx" atvirkštinio tarpinio serverio naudojimas "Windows Remote Desktop"
Paskelbta 2021-11-21 19:26:44 |
Nauji dalykai, mokykitės ir mokykitės
Paskelbta 2021-11-21 23:09:21 |
Ateikite ir mokykitės dar kartą。。。。。。
Paskelbta 2021-12-01 10:07:39 |
Wei Wu
Paskelbta 2022-02-08 09:28:46 |

Nauji dalykai, mokykitės ir mokykitės
Paskelbta 2022-02-08 09:29:19 |


Nauji dalykai, išmokite
 Savininkas| Paskelbta 2022-03-12 17:52:27 |
Pašalinkite vieną iš numatytųjų nuorodų ir redaguokite projekto failą naudodami šį kodą:

 Savininkas| Paskelbta 2022-03-19 20:57:25 |
Failo kelias: "C:\Program Files\dotnet\sdk\6.0.200\Sdks\Microsoft.NET.Sdk.Web\Sdk\Sdk.props"

Paskelbta 2023-02-20 16:23:50 |
666 Naujojo pasaulio atradimas
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com