private async Task <StatisticInDbModel> ReturnStatistic(SqlCommand command) { SqlDataReader reader = await command.ExecuteReaderAsync(); StatisticInDbModel statistic = reader.Read() ? new StatisticInDbModel( (int)reader["Id"], (string)reader["Name"], (string)reader["Description"], (string)reader["SqlExpression"]) : null; reader.Close(); return(statistic); }
public async Task <int> CreateAsync(StatisticInDbModel info) => await ExecuteSqlCommand( "INSERT INTO CatStatistics (Name, Description, SqlExpression) VALUES (@name, @description, @sqlExpression); SELECT SCOPE_IDENTITY();", async command => Convert.ToInt32(await command.ExecuteScalarAsync()), new SqlParameter[] { new SqlParameter("@name", info.Name), new SqlParameter("@description", info.Description), new SqlParameter("@sqlExpression", info.Description), new SqlParameter { ParameterName = "@id", SqlDbType = SqlDbType.Int, Direction = ParameterDirection.Output } });