diff options
author | crupest <crupest@outlook.com> | 2022-12-09 18:44:57 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2022-12-20 20:32:53 +0800 |
commit | d042a4553c4ed97f0d7eb97c7788d2794cdb85d8 (patch) | |
tree | 64e87b75e62674ff602b5676ff1c1fa10b09ac75 /docker/crupest-api | |
parent | 74541c7bd7005fb945957bbace348d4a8c59602c (diff) | |
download | crupest-d042a4553c4ed97f0d7eb97c7788d2794cdb85d8.tar.gz crupest-d042a4553c4ed97f0d7eb97c7788d2794cdb85d8.tar.bz2 crupest-d042a4553c4ed97f0d7eb97c7788d2794cdb85d8.zip |
Develop secret api. v22
Diffstat (limited to 'docker/crupest-api')
-rw-r--r-- | docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs index 4836720..9977465 100644 --- a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs +++ b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs @@ -376,6 +376,8 @@ CREATE TABLE {tableName}( { if (d is null) return null; + Type dynamicType = d.GetType(); + var result = Activator.CreateInstance(EntityType); foreach (var column in ColumnInfos) @@ -383,7 +385,9 @@ CREATE TABLE {tableName}( var propertyInfo = column.PropertyInfo; if (propertyInfo is not null) { - object? value = d[column.ColumnName]; + var dynamicProperty = dynamicType.GetProperty(column.ColumnName); + if (dynamicProperty is null) continue; + object? value = dynamicProperty.GetValue(d); value = column.ColumnType.ConvertFromDatabase(value); propertyInfo.SetValue(result, value); } |