@@ -5,6 +5,7 @@ using System.Collections.Generic;
55using System.Text.Json;
66using System.Text.Json.Serialization;
77using {{ spec .title | caseUcfirst }}.Enums;
8+ using {{ spec .title | caseUcfirst }}.Extensions;
89
910namespace {{ spec .title | caseUcfirst }}.Models
1011{
@@ -41,7 +42,7 @@ namespace {{ spec.title | caseUcfirst }}.Models
4142 {{ property .name | caseCamel | escapeKeyword | removeDollarSign }}:{{' ' }}
4243 {%- if property .sub_schema %}
4344 {%- if property .type == ' array' -%}
44- map["{{ property .name }}"] is JsonElement jsonArray{{ loop . index }} ? jsonArray{{ loop . index }}.Deserialize< List < Dictionary <string , object >>>()!.Select(it => {{ property . sub_schema | caseUcfirst | overrideIdentifier }}.From(map: it)).ToList() : ((IEnumerable< Dictionary < string , object >>)map["{{ property . name }}"] ).Select(it => {{ property .sub_schema | caseUcfirst | overrideIdentifier }}.From(map: it)).ToList()
45+ map["{{ property .name }}"].ConvertToList< Dictionary <string , object >>( ).Select(it => {{ property .sub_schema | caseUcfirst | overrideIdentifier }}.From(map: it)).ToList()
4546 {%- else -%}
4647 {{ property .sub_schema | caseUcfirst | overrideIdentifier }}.From(map: map["{{ property .name }}"] is JsonElement jsonObj{{ loop .index }} ? jsonObj{{ loop .index }}.Deserialize<Dictionary <string , object >>()! : (Dictionary<string , object >)map["{{ property .name }}"])
4748 {%- endif %}
@@ -58,7 +59,7 @@ namespace {{ spec.title | caseUcfirst }}.Models
5859 {%- endif %}
5960 {%- else %}
6061 {%- if property .type == ' array' -%}
61- map["{{ property .name }}"] is JsonElement jsonArrayProp{{ loop . index }} ? jsonArrayProp{{ loop . index }}.Deserialize < {{ property | typeName }}>()! : ({{ property | typeName }})map["{{ property . name }}"]
62+ map["{{ property .name }}"].ConvertToList < {{ property | typeName | replace({ ' List< ' : ' ' , ' > ' : ' ' }) }}>()
6263 {%- else %}
6364 {%- if property .type == " integer" or property .type == " number" %}
6465 {%- if not property .required -%}map["{{ property .name }}"] == null ? null :{% endif %}Convert.To{% if property .type == " integer" %}Int64{% else %}Double{% endif %}(map["{{ property .name }}"])
0 commit comments