public static PathResult IsValidPath(string path) { if (path == null) throw new ArgumentNullException("path"); if (path.Length == 0) return PathResult.Empty; if (path.Length > Data.DataProvider.Current.PathMaxLength) return PathResult.TooLong; if (PathContainsInvalidChar(path)) return PathResult.InvalidPathChar; string[] segments = path.Split(PathSeparator.ToCharArray()); for (int i = 0; i < segments.Length; i++) { string segment = segments[i]; if (i == 0) { if (segment.Length != 0) return PathResult.InvalidFirstChar; } else { if (segment.Length == 0) return PathResult.Empty; if (Char.IsWhiteSpace(segment[0])) return PathResult.StartsWithSpace; if (Char.IsWhiteSpace(segment[segment.Length - 1])) return PathResult.EndsWithSpace; if (segment[segment.Length - 1] == '.') return PathResult.EndsWithDot; } } return PathResult.Correct; } public static PathResult IsValidName(string name)
private static string GetMessage(string msg) { int id; if (int.TryParse(msg, out id) || (RepositoryPath.IsValidPath(msg) == RepositoryPath.PathResult.Correct)) { return("Content not found: " + msg); } return(msg); }