Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Namnrymder används mycket i C#-programmering på två sätt. För det första använder .NET namnområden för att organisera sina många klasser enligt följande:
System.Console.WriteLine("Hello World!");
System är ett namnområde och Console är en klass i det namnområdet. Nyckelordet using kan användas så att det fullständiga namnet inte krävs, som i följande exempel:
using System;
Console.WriteLine("Hello World!");
Mer information finns i användningsdirektivet.
Du kan också skapa ett alias för ett namnområde eller en typ med hjälp av aliasdirektivet.
I mer avancerade scenarier kan du referera till flera sammansättningar med samma namnområden eller typer med hjälp av funktionen externt alias .
Viktigt!
C#-mallarna för .NET 6 använder toppnivåinstruktioner. Programmet kanske inte matchar koden i den här artikeln om du redan har uppgraderat till .NET 6. Mer information finns i artikeln om nya C#-mallar som genererar instruktioner på toppnivå
.NET 6 SDK lägger också till en uppsättning implicitaglobal using direktiv för projekt som använder följande SDK:er:
- Microsoft.NET.Sdk
- Microsoft.NET.Sdk.Web
- Microsoft.NET.Sdk.Worker
Dessa implicita global using direktiv innehåller de vanligaste namnrymderna för projekttypen.
Mer information finns i artikeln om implicit användning av direktiv
För det andra kan du genom att deklarera egna namnområden hjälpa dig att styra omfånget för klass- och metodnamn i större programmeringsprojekt. Använd nyckelordet namespace för att deklarera ett namnområde, som i följande exempel:
namespace SampleNamespace
{
class SampleClass
{
public void SampleMethod()
{
System.Console.WriteLine(
"SampleMethod inside SampleNamespace");
}
}
}
Namnet på namnområdet måste vara ett giltigt C#- identifierarnamn.
Du kan deklarera ett namnområde för alla typer som definierats i filen, enligt följande exempel:
namespace SampleNamespace;
class AnotherSampleClass
{
public void AnotherSampleMethod()
{
System.Console.WriteLine(
"SampleMethod inside SampleNamespace");
}
}
Fördelen med den här nya syntaxen är att det är enklare att spara vågrätt utrymme och klammerparenteser. Det gör koden enklare att läsa.
Översikt över namnområden
Namnområden har följande egenskaper:
- De organiserar stora kodprojekt.
- De avgränsas med hjälp av operatorn
.. - Direktivet
usingundanröjer kravet på att ange namnet på namnområdet för varje klass. - Namnområdet
globalär namnområdet "root":global::Systemrefererar alltid till namnområdet .NET System.
Språkspecifikation för C#
Mer information finns i avsnittet Namnområden i C#-språkspecifikationen.