aboutsummaryrefslogtreecommitdiff
path: root/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-12-20 19:25:02 +0800
committercrupest <crupest@outlook.com>2022-12-20 20:32:53 +0800
commit4264d8135c066081dbabb412db17bf537ceab86e (patch)
tree85b7b1413518d5ff72c804085cac11a07862807e /docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud
parent51bf9d6c9e522ecc31f9068d9e5eaa0321fef587 (diff)
downloadcrupest-4264d8135c066081dbabb412db17bf537ceab86e.tar.gz
crupest-4264d8135c066081dbabb412db17bf537ceab86e.tar.bz2
crupest-4264d8135c066081dbabb412db17bf537ceab86e.zip
Develop secret api. v50
Diffstat (limited to 'docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud')
-rw-r--r--docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs14
-rw-r--r--docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs8
2 files changed, 13 insertions, 9 deletions
diff --git a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs
index d1958e5..1a2a055 100644
--- a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs
+++ b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs
@@ -62,9 +62,21 @@ public class CrudService<TEntity> : IDisposable where TEntity : class
return result.Single();
}
+ public IInsertClause ConvertEntityToInsertClauses(TEntity entity)
+ {
+ var result = new InsertClause();
+ foreach (var column in _table.PropertyColumns)
+ {
+ var value = column.PropertyInfo!.GetValue(entity);
+ result.Add(column.ColumnName, value);
+ }
+ return result;
+ }
+
public string Create(TEntity entity)
{
- var key = _table.Insert(_dbConnection, entity);
+ var insertClause = ConvertEntityToInsertClauses(entity);
+ var key = _table.Insert(_dbConnection, insertClause);
return (string)key;
}
diff --git a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs
index 0565561..c1f647b 100644
--- a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs
+++ b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs
@@ -537,14 +537,6 @@ CREATE TABLE {tableName}(
return key ?? throw new Exception("No key???");
}
- public object Insert(IDbConnection dbConnection, object entity)
- {
- Debug.Assert(EntityType.IsInstanceOfType(entity));
- var insert = ConvertEntityToInsertClause(entity);
- return Insert(dbConnection, insert);
- }
-
-
/// <summary>
/// Upgrade a entity and call hooks.
/// </summary>