private DbClothingRule DbModelFromDomainModel(DomainClothingRule rule)
 {
     return(new DbClothingRule {
         Id = rule.Id,
         FromTemperature = rule.FromTemperature,
         ToTemperature = rule.ToTemperature,
         IsRaining = rule.IsRaining,
         Clothes = rule.Clothes
     });
 }
        public async Task <int> Delete(DomainClothingRule rule)
        {
            await using var connection = new SqlConnection(_configuration.ConnectionString);
            const string update = @"
                DELETE FROM [dbo].[ClothingRule]
                WHERE Id = @Id
            ";
            var          data   = DbModelFromDomainModel(rule);
            var          rows   = await connection.ExecuteAsync(update, data);

            return(rows);
        }
        public async Task <int> Update(DomainClothingRule rule)
        {
            await using var connection = new SqlConnection(_configuration.ConnectionString);
            const string update = @"
                UPDATE [dbo].[ClothingRule]
                   SET [IsRaining] = @IsRaining
                      ,[FromTemperature] = @FromTemperature
                      ,[ToTemperature] = @ToTemperature
                      ,[Clothes] = @Clothes
                 WHERE Id = @Id
            ";
            var          data   = DbModelFromDomainModel(rule);
            var          rows   = await connection.ExecuteAsync(update, data);

            return(rows);
        }
        public async Task <int> Create(DomainClothingRule rule)
        {
            await using var connection = new SqlConnection(_configuration.ConnectionString);
            const string update = @"
                INSERT INTO [dbo].[ClothingRule]
                           ([Id]
                           ,[IsRaining]
                           ,[FromTemperature]
                           ,[ToTemperature]
                           ,[Clothes])
                     VALUES
                           (@Id
                           ,@IsRaining
                           ,@FromTemperature
                           ,@ToTemperature
                           ,@Clothes)
            ";
            var          data   = DbModelFromDomainModel(rule);
            var          rows   = await connection.ExecuteAsync(update, data);

            return(rows);
        }