public static string ToNormalizedPath(this string path) { if (string.IsNullOrEmpty(path)) return null; return path.BackSlashToForwardSlash().TrimEnd('/'); }
/// <summary> /// Also change backslash to forward slash /// </summary> /// <param name="path"></param> /// <param name="kind"></param> /// <param name="basePath"></param> /// <returns></returns> public static string FormatPath(this string path, UriKind kind, string basePath = null) { if (kind == UriKind.RelativeOrAbsolute) { return path.BackSlashToForwardSlash(); } if (kind == UriKind.Absolute) { return Path.GetFullPath(path).BackSlashToForwardSlash(); } if (kind == UriKind.Relative) { if (string.IsNullOrEmpty(basePath)) { return path.BackSlashToForwardSlash(); } return MakeRelativePath(basePath, path).BackSlashToForwardSlash(); } return null; }