Ich habe ein Problem mit der .NET Uri-Implementierung. Es scheint, dass, wenn das Schema "ftp" ist, der Abfrageteil nicht als Abfrage geparst wird, sondern als Teil des Pfades.Alternative zu .NET Uri-Implementierung?
Nehmen Sie den folgenden Code beispielsweise:
Uri testuri = new Uri("ftp://user:[email protected]/?passive=true");
Console.WriteLine(testuri.Query); // Outputs an empty string
Console.WriteLine(testuri.AbsolutePath); // Outputs "/%3Fpassive=true"
Es scheint mir, dass die Uri-Klasse zu Unrecht die Abfrage Teil als Teil des Pfades analysiert. Doch das System zu ändern, um HTTP, wird das Ergebnis als erwartet:
Uri testuri = new Uri("http://user:[email protected]/?passive=true");
Console.WriteLine(testuri.Query); // Outputs "?passive=true"
Console.WriteLine(testuri.AbsolutePath); // Outputs "/"
Hat jemand eine Lösung für dieses Problem hat, oder weiß von einer alternativen Uri-Klasse, die wie erwartet funktioniert?