diff options
author | crupest <crupest@outlook.com> | 2022-12-14 16:23:31 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2022-12-20 20:32:53 +0800 |
commit | 106e7492d8e8d07ccf50f2d13b5685f5838a52d8 (patch) | |
tree | 65639071646120768668149d40cff208bfee39b2 /docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs | |
parent | 3af36448bed4f825331dc359615f8c4acf825f58 (diff) | |
download | crupest-106e7492d8e8d07ccf50f2d13b5685f5838a52d8.tar.gz crupest-106e7492d8e8d07ccf50f2d13b5685f5838a52d8.tar.bz2 crupest-106e7492d8e8d07ccf50f2d13b5685f5838a52d8.zip |
Develop secret api. v40
Diffstat (limited to 'docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs')
-rw-r--r-- | docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs index 796761e..65085fd 100644 --- a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs +++ b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/CrudService.cs @@ -26,6 +26,8 @@ public class CrudService<TEntity> : IDisposable where TEntity : class } } + public EntityJsonHelper<TEntity> JsonHelper => _jsonHelper; + public virtual void DoInitializeDatabase(IDbConnection connection) { using var transaction = connection.BeginTransaction(); @@ -43,4 +45,17 @@ public class CrudService<TEntity> : IDisposable where TEntity : class var result = _table.Select<TEntity>(_dbConnection, null); return result; } + + public TEntity GetByKey(string key) + { + var result = _table.Select<TEntity>(_dbConnection, null, WhereClause.Create().Eq(_table.KeyColumn.ColumnName, key)); + return result.Single(); + } + + public string Create(JsonElement jsonElement) + { + var insertClauses = _jsonHelper.ConvertJsonElementToInsertClauses(jsonElement); + var key = _table.Insert(_dbConnection, insertClauses); + return (string)key; + } } |