Risicobeperking: Controles van padkomma's
Vanaf apps die gericht zijn op .NET Framework 4.6.2, zijn er een aantal wijzigingen aangebracht ter ondersteuning van eerder niet-ondersteunde paden (zowel qua lengte als indeling). In het bijzonder zijn controles op de juiste syntaxis van het stationsscheidingsteken (de dubbele punt) nauwkeuriger gemaakt.
Impact
Deze wijzigingen blokkeren enkele URI-paden die eerder Path.GetDirectoryName worden ondersteund en Path.GetPathRoot methoden.
Oplossing
Als u het probleem wilt omzeilen van een eerder acceptabel pad dat niet meer wordt ondersteund door de Path.GetDirectoryName en Path.GetPathRoot methoden, kunt u het volgende doen:
Verwijder het schema handmatig uit een URL. Verwijder bijvoorbeeld
file://
uit een URL.Geef de URI door aan een Uri constructor en haal de waarde van de Uri.LocalPath eigenschap op.
Afmelden voor de nieuwe padnormalisatie door de
Switch.System.IO.UseLegacyPathHandling
AppContext schakeloptie in te stellen optrue
.<runtime> <AppContextSwitchOverrides value="Switch.System.IO.UseLegacyPathHandling=true" /> </runtime>