/// <inheritdoc /> public IDirectoryContents GetDirectoryContents(string subpath) { if (!StartsWithBasePath(subpath, out var physicalPath)) { return(NotFoundDirectoryContents.Singleton); } else { return(InnerProvider.GetDirectoryContents(physicalPath)); } }
/// <inheritdoc /> public IDirectoryContents GetDirectoryContents(string subpath) { var modifiedSub = NormalizePath(subpath); if (StartsWithBasePath(modifiedSub, out var physicalPath)) { return(InnerProvider.GetDirectoryContents(physicalPath.Value)); } else if (string.Equals(subpath, string.Empty) || string.Equals(modifiedSub, "/")) { return(new StaticWebAssetsDirectoryRoot(BasePath)); } else if (BasePath.StartsWithSegments(modifiedSub, FilePathComparison, out var remaining)) { return(new StaticWebAssetsDirectoryRoot(remaining)); } return(NotFoundDirectoryContents.Singleton); }