mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 18:52:50 +08:00
- 优化 AOT 默认导致 Enum.GetValues 报错的问题;#1691
This commit is contained in:
parent
29e3635f1b
commit
231d5ac555
@ -252,8 +252,12 @@ namespace FreeSql.Internal
|
||||
if (entityDefault != null) defaultValue = trytb.Properties[csName].GetValue(entityDefault, null);
|
||||
if (defaultValue != null && mapType.IsEnum)
|
||||
{
|
||||
Array enumValues = null;
|
||||
try { enumValues = Enum.GetValues(mapType); } //AOT error
|
||||
catch { }
|
||||
if (enumValues != null)
|
||||
{
|
||||
var isEqualsEnumValue = false;
|
||||
var enumValues = Enum.GetValues(mapType);
|
||||
for (var a = 0; a < enumValues.Length; a++)
|
||||
if (object.Equals(defaultValue, enumValues.GetValue(a)))
|
||||
{
|
||||
@ -262,6 +266,7 @@ namespace FreeSql.Internal
|
||||
}
|
||||
if (isEqualsEnumValue == false && enumValues.Length > 0)
|
||||
defaultValue = enumValues.GetValue(0);
|
||||
}
|
||||
}
|
||||
if (defaultValue != null && mapType != colattr.MapType) defaultValue = Utils.GetDataReaderValue(colattr.MapType, defaultValue);
|
||||
if (defaultValue == null) defaultValue = tp?.defaultValue;
|
||||
|
Loading…
x
Reference in New Issue
Block a user