Browse Source

尝试修复Dictionary复杂型FromJson序列化

felix 8 months ago
parent
commit
3221c5e427
2 changed files with 8 additions and 1 deletions
  1. 8 1
      ModelTypes/ComplexModelType.cs
  2. BIN
      WingInterfaceLibrary.dll

+ 8 - 1
ModelTypes/ComplexModelType.cs

@@ -243,7 +243,14 @@ namespace FlutterCodeGenerator.ModelTypes
                 {
                     var argumentName1 = dictionaryModelType.GenericArgumentModelTypeList[0].GetFlutterTypeName();
                     var argumentName2 = dictionaryModelType.GenericArgumentModelTypeList[1].GetFlutterTypeName();
-                    source.AppendLine($"\t\t\t{child.Name_Lower}: map['{child.Name_Upper}']?.cast<{argumentName1},{argumentName2}>(),");
+                    if(dictionaryModelType.GenericArgumentModelTypeList[0] is SimpleModelType && dictionaryModelType.GenericArgumentModelTypeList[1] is SimpleModelType)
+                    {
+                        source.AppendLine($"\t\t\t{child.Name_Lower}: map['{child.Name_Upper}']?.cast<{argumentName1},{argumentName2}>(),");
+                    }
+                    else
+                    {
+                        source.AppendLine($"\t\t\t{child.Name_Lower}: map['{child.Name_Upper}'] != null ? map['{child.Name_Upper}'] as Map<{argumentName1},{argumentName2}> : null,");
+                    }
                 }
                 else if (child is UserDefinedGenericModelType userDefinedGenericModelType)
                 {

BIN
WingInterfaceLibrary.dll