using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Web; namespace OnDocAPI_NetFramework.Helper { public static class Helper { public static void CopyProperties(object source, object target) { var sourceProps = source.GetType().GetProperties(); var targetProps = target.GetType().GetProperties(); foreach (var prop in sourceProps) { var targetProp = targetProps.FirstOrDefault(p => p.Name == prop.Name && p.PropertyType == prop.PropertyType); if (targetProp != null && targetProp.CanWrite) { targetProp.SetValue(target, prop.GetValue(source)); } } } private static readonly Random _random = new Random(); public static string RandomString(int size, bool lowerCase = false) { var builder = new StringBuilder(size); char offset = lowerCase ? 'a' : 'A'; const int lettersOffset = 26; // A...Z or a..z: length=26 for (var i = 0; i < size; i++) { var @char = (char)_random.Next(offset, offset + lettersOffset); builder.Append(@char); } return lowerCase ? builder.ToString().ToLower() : builder.ToString(); } } }