public static void NullOrTrimNotEmpty(ref string param, string paramName) { if (param == null) { return; } param = param.Trim(); ArgumentGuard.NotEmpty(param, paramName); }
public Url SubpathElement(string subpath) { ArgumentGuard.NotEmpty(subpath, nameof(subpath)); UriBuilder builder = new UriBuilder(this); string path = builder.Path; path = path.StartsWithOrdinal(SLASH_.ToString()) ? path.Substring(1) : path; builder.Path = AppendSubpath_(builder.Path, subpath); return(new Url(builder.Uri)); }
public Url QueryElement(string param, string value) { ArgumentGuard.NotEmpty(param, nameof(param)); ArgumentGuard.NotNull(value, nameof(value)); UriBuilder builder = new UriBuilder(this); string query = builder.Query; query = query.StartsWithOrdinal(Q_.ToString()) ? query.Substring(1) : query; builder.Query = AppendQuery_(query, param, value); return(new Url(builder.Uri)); }
/// <summary> /// Split string by maximum length. /// </summary> /// <param name="str">The string to split.</param> /// <param name="n">The maximum number of characters in line. All lines will have that number of characters except (perhaps) the last.</param> /// <returns>An enumerable of strings, each represnting a line which is part of the original string.</returns> public static IEnumerable <string> Split(this string str, int n) { ArgumentGuard.NotEmpty(str, nameof(str)); ArgumentGuard.GreaterOrEqual(n, 1, nameof(n)); List <string> result = new List <string>(); int i = 0; while (i < str.Length - n) { result.Add(str.Substring(i, n)); i += n; } if (i < str.Length) { result.Add(str.Substring(i)); } return(result.ToArray()); }
public static string ToPascalCase(string str) { ArgumentGuard.NotEmpty(str, nameof(str)); return(str.Substring(0, 1).ToUpper() + str.Substring(1).ToLower()); }
public static void TrimNotEmpty(ref string param, string paramName) { ArgumentGuard.NotNull(param, paramName); param = param.Trim(); ArgumentGuard.NotEmpty(param, paramName); }