public static TOut ConvertTo <TOut>(this IConvertible value) where TOut : IConvertible { if (value.IsNull()) { throw new ArgumentNullException(nameof(value)); } return((TOut)Convert.ChangeType(value, typeof(TOut))); }