diff options
Diffstat (limited to 'docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/UpdateClause.cs')
-rw-r--r-- | docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/UpdateClause.cs | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/UpdateClause.cs b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/UpdateClause.cs index 7cb5edf..b9cafee 100644 --- a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/UpdateClause.cs +++ b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/UpdateClause.cs @@ -15,8 +15,13 @@ public class UpdateItem public object? Value { get; set; } } -// TODO: Continue... -public class UpdateClause +public interface IUpdateClause : IClause +{ + List<UpdateItem> Items { get; } + (string sql, DynamicParameters parameters) GenerateSql(); +} + +public class UpdateClause : IUpdateClause { public List<UpdateItem> Items { get; } = new List<UpdateItem>(); @@ -51,8 +56,10 @@ public class UpdateClause return Items.Select(i => i.ColumnName).ToList(); } - public string GenerateSql(DynamicParameters parameters) + public (string sql, DynamicParameters parameters) GenerateSql() { + var parameters = new DynamicParameters(); + StringBuilder result = new StringBuilder(); foreach (var item in Items) @@ -66,6 +73,6 @@ public class UpdateClause result.Append($"{item.ColumnName} = @{parameterName}"); } - return result.ToString(); + return (result.ToString(), parameters); } } |