public virtual async Task <T> QueryFirstAsync <T>(string sql, object param = null)
 {
     using (IDbConnection conn = new SqlConnection(ConnectionString))
     {
         return(await conn.QueryFirstAsync <T>(sql, param));
     }
 }