快速开发平台提供一组实体操作方法--验证类
快速开发平台附上源码:包含软件类实体操作方法--判空、长度、随机数、判数字、判数组相同等。
/// <summary> /// Generate random digit code /// </summary> /// <param name="length">Length</param> /// <returns>Result string</returns> public static string GenerateRandomDigitCode(int length) { var random = new Random(); string str = string.Empty; for (int i = 0; i < length; i++) str = String.Concat(str, random.Next(10).ToString()); return str; } /// <summary> /// Returns an random interger number within a specified rage /// </summary> /// <param name="min">Minimum number</param> /// <param name="max">Maximum number</param> /// <returns>Result</returns> public static int GenerateRandomInteger(int min = 0, int max = int.MaxValue) { var randomNumberBuffer = new byte[10]; new RNGCryptoServiceProvider().GetBytes(randomNumberBuffer); return new Random(BitConverter.ToInt32(randomNumberBuffer, 0)).Next(min, max); } /// <summary> /// Ensure that a string doesn't exceed maximum allowed length /// </summary> /// <param name="str">Input string</param> /// <param name="maxLength">Maximum length</param> /// <param name="postfix">A string to add to the end if the original string was shorten</param> /// <returns>Input string if its lengh is OK; otherwise, truncated input string</returns> public static string EnsureMaximumLength(string str, int maxLength, string postfix = null) { if (String.IsNullOrEmpty(str)) return str; if (str.Length > maxLength) { var result = str.Substring(0, maxLength); if (!String.IsNullOrEmpty(postfix)) { result += postfix; } return result; } else { return str; } } /// <summary> /// Ensures that a string only contains numeric values /// </summary> /// <param name="str">Input string</param> /// <returns>Input string with only numeric values, empty string if input is null/empty</returns> public static string EnsureNumericOnly(string str) { if (String.IsNullOrEmpty(str)) return string.Empty; var result = new StringBuilder(); foreach (char c in str) { if (Char.IsDigit(c)) result.Append(c); } return result.ToString(); } /// <summary> /// Ensure that a string is not null /// </summary> /// <param name="str">Input string</param> /// <returns>Result</returns> public static string EnsureNotNull(string str) { if (str == null) return string.Empty; return str; } /// <summary> /// Indicates whether the specified strings are null or empty strings /// </summary> /// <param name="stringsToValidate">Array of strings to validate</param> /// <returns>Boolean</returns> public static bool AreNullOrEmpty(params string[] stringsToValidate) { bool result = false; Array.ForEach(stringsToValidate, str => { if (string.IsNullOrEmpty(str)) result = true; }); return result; } /// <summary> /// Compare two arrasy /// </summary> /// <typeparam name="T">Type</typeparam> /// <param name="a1">Array 1</param> /// <param name="a2">Array 2</param> /// <returns>Result</returns> public static bool ArraysEqual<T>(T[] a1, T[] a2) { //also see Enumerable.SequenceEqual(a1, a2); if (ReferenceEquals(a1, a2)) return true; if (a1 == null || a2 == null) return false; if (a1.Length != a2.Length) return false; var comparer = EqualityComparer<T>.Default; for (int i = 0; i < a1.Length; i++) { if (!comparer.Equals(a1[i], a2[i])) return false; } return true; }
本站文章除注明转载外,均为本站原创或翻译,欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,共创和谐网络环境。
转载请注明:文章转载自:软件开发框架 » 快速开发平台提供一组实体操作方法--验证类
本文标题:快速开发平台提供一组实体操作方法--验证类