diff --git a/src/Dav.AspNetCore.Server/UriHelper.cs b/src/Dav.AspNetCore.Server/UriHelper.cs index 723fa5c..870f2ab 100644 --- a/src/Dav.AspNetCore.Server/UriHelper.cs +++ b/src/Dav.AspNetCore.Server/UriHelper.cs @@ -12,7 +12,7 @@ public static Uri GetParent(this Uri uri) var uriString = string.Empty; for (var i = 0; i < uri.Segments.Length - 1; i++) { - uriString += uri.Segments[i]; + uriString += Uri.UnescapeDataString(uri.Segments[i]); } return new Uri(uriString); @@ -42,7 +42,7 @@ public static Uri GetRelativeUri(this Uri relativeTo, Uri uri) return uri; } - var relativePath = string.Join("", relativeTo.Segments.Skip(uri.Segments.Length)); + var relativePath = string.Join("", relativeTo.Segments.Select(s => Uri.UnescapeDataString(s)).Skip(uri.Segments.Length)); if (!relativePath.StartsWith("/")) relativePath = $"/{relativePath}";