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 | 7fd38e35fdc5248502008903cf7608d9b799fd7f (patch) | |
| tree | 64e87b75e62674ff602b5676ff1c1fa10b09ac75 | |
| parent | a586767b9b6e122891a8cddba57aecef11ef4bd2 (diff) | |
| download | crupest-7fd38e35fdc5248502008903cf7608d9b799fd7f.tar.gz crupest-7fd38e35fdc5248502008903cf7608d9b799fd7f.tar.bz2 crupest-7fd38e35fdc5248502008903cf7608d9b799fd7f.zip | |
Develop secret api. v22
| -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);              } | 
