Delen via


Opsomming van huidige mappad van station

Bestandssysteemvermeldingen die zijn verkregen met behulp van een padargument in de vorm van een 'huidige map van het station', bijvoorbeeld, C:zijn onjuist gevormd door combinaties directory path + separator + entry name. Als u het juiste pad voor de vermeldingen wilt retourneren, wordt het scheidingsteken niet meer toegevoegd met dergelijke paden.

Vorig gedrag

Eerder werd een scheidingsteken toegevoegd, zodat de geïnventareerde bestandssysteemvermeldingen in de hoofdmap van het station verschenen.

string pathToEnumerate = "C:";

Console.WriteLine($"Full path of \"{pathToEnumerate}\" is {Path.GetFullPath(pathToEnumerate)}.");
Path.GetFullPath(pathToEnumerate);

Console.WriteLine($"Enumerating files and folders in \"{pathToEnumerate}\".");
foreach (string entry in Directory.GetFileSystemEntries(pathToEnumerate))
{
    Console.WriteLine(entry);
}

De uitvoer van het uitvoeren van dit codefragment is als volgt.

Full path of "C:" is C:\Users\myalias\consoleapps\Program

Enumerating files and folders in "C:".
C:\Program.csproj
C:\Program.sln
C:\bin
C:\obj
C:\Program.cs

Nieuw gedrag

Het uitvoeren van hetzelfde codefragment in .NET 8 en latere versies produceert uitvoer zonder scheidingsteken in elk pad.

Full path of "C:" is C:\Users\myalias\consoleapps\Program.

Enumerating files and folders in "C:".
C:Program.csproj
C:Program.sln
C:bin
C:obj
C:Program.cs

Versie geïntroduceerd

.NET 8

Type wijziging die fouten veroorzaken

Deze wijziging is een gedragswijziging.

Reden voor wijziging

Gebruikers hebben gemeld dat het vorige gedrag onjuist was. Het was ook een regressie van .NET Framework.

Als u een Windows-gebruiker bent die afhankelijk is van inventarisatie van paden zoals C:, moet u de I/O-bewerkingen van uw toepassing opnieuw evalueren. Dit is een ongebruikelijk scenario dat waarschijnlijk niet in productie zal worden gebruikt. De meeste gebruikers die in plaats daarvan het huidige adreslijstgebruik Environment.CurrentDirectory willen inventariseren.

Betrokken API's