/// <summary>
 /// Execute scalar to
 /// </summary>
 /// <param name="conn"></param>
 /// <param name="cmdText"></param>
 /// <param name="parameters"></param>
 /// <param name="commandType"></param>
 /// <typeparam name="T"></typeparam>
 /// <returns></returns>
 public static Task <T> ExecuteScalarToAsync <T>(this SQLiteConnection conn, string cmdText, SQLiteParameter[] parameters, CommandType commandType)
 {
     conn.CheckNull(nameof(conn));
     return(conn.ExecuteScalarToAsync <T>(cmdText, parameters, commandType, null));
 }
 /// <summary>
 /// Execute scalar to
 /// </summary>
 /// <param name="conn"></param>
 /// <param name="cmdText"></param>
 /// <param name="commandType"></param>
 /// <param name="transaction"></param>
 /// <typeparam name="T"></typeparam>
 /// <returns></returns>
 public static Task <T> ExecuteScalarToAsync <T>(this SQLiteConnection conn, string cmdText, CommandType commandType, SQLiteTransaction transaction)
 {
     conn.CheckNull(nameof(conn));
     return(conn.ExecuteScalarToAsync <T>(cmdText, null, commandType, transaction));
 }