@@ -39,13 +39,34 @@ namespace {{ spec.title | caseUcfirst }}.Models
39
39
}
40
40
41
41
public static {{ definition .name | caseUcfirst | overrideIdentifier }} From(Dictionary<string , object > map) => new {{ definition .name | caseUcfirst | overrideIdentifier }}(
42
- {%~ for property in definition .properties %}
43
- {{ property.name | caseCamel | escapeKeyword | removeDollarSign }}: {% if property.sub_schema %}{% if property.type == 'array' %}((JArray)map["{{ property.name }}"]).ToObject<List<Dictionary<string, object>>>().Select(it => {{property.sub_schema | caseUcfirst | overrideIdentifier}}.From(map: it)).ToList(){% else %}{{property.sub_schema | caseUcfirst | overrideIdentifier}}.From(map: ((JObject)map["{{ property.name }}"]).ToObject<Dictionary<string, object>>()!){% endif %}{% else %}{% if property.type == 'array' %}((JArray)map["{{ property.name }}"]).ToObject<{{ property | typeName }}>(){% else %}{% if property.type == "integer" or property.type == "number" %}{% if not property.required %}map["{{ property.name }}"] == null ? null : {% endif %}Convert.To{% if property.type == "integer" %}Int64{% else %}Double{% endif %}(map["{{ property.name }}"]){% else %}{% if property.type == "boolean" %}({{ property | typeName }}{% if not property.required %}?{% endif %})map["{{ property.name }}"]{% else %}map{% if not property.required %}.TryGetValue("{{ property.name }}", out var {{ property.name | caseCamel | escapeKeyword | removeDollarSign }}) ? {{ property.name | caseCamel | escapeKeyword | removeDollarSign }}?.ToString() : null{% else %}["{{ property.name }}"]{% if not property.required %}?{% endif %}.ToString(){% endif %}{% endif %}{% endif %}{% endif %}{% endif %}{% if not loop.last or (loop.last and definition.additionalProperties) %},{% endif %}
44
-
45
- {%~ endfor %}
46
- {%~ if definition .additionalProperties %}
47
- data: map
48
- {%~ endif %}
42
+ {%- for property in definition .properties -%}
43
+ {{ property .name | caseCamel | escapeKeyword | removeDollarSign }}: {%- if property .sub_schema -%}
44
+ {%- if property .type == ' array' -%}
45
+ ((JArray)map["{{ property .name }}"]).ToObject<List <Dictionary <string , object >>>().Select(it => {{property .sub_schema | caseUcfirst | overrideIdentifier }}.From(map: it)).ToList()
46
+ {%- else -%}
47
+ {{property .sub_schema | caseUcfirst | overrideIdentifier }}.From(map: ((JObject)map["{{ property .name }}"]).ToObject<Dictionary <string , object >>()!)
48
+ {%- endif -%}
49
+ {%- else -%}
50
+ {%- if property .type == ' array' -%}
51
+ ((JArray)map["{{ property .name }}"]).ToObject< {{ property | typeName }}>()
52
+ {%- else -%}
53
+ {%- if property .type == " integer" or property .type == " number" -%}
54
+ {%- if not property .required -%}map["{{ property .name }}"] == null ? null : {%- endif -%}
55
+ Convert.To{%- if property .type == " integer" -%}Int64{%- else -%}Double{%- endif -%}(map["{{ property .name }}"])
56
+ {%- else -%}
57
+ {%- if property .type == " boolean" -%}
58
+ ({{ property | typeName }}{%- if not property .required -%}?{%- endif -%})map["{{ property .name }}"]
59
+ {%- else -%}
60
+ map{%- if not property .required -%}.TryGetValue("{{ property .name }}", out var {{ property .name | caseCamel | escapeKeyword | removeDollarSign }}) ? {{ property .name | caseCamel | escapeKeyword | removeDollarSign }}?.ToString() : null{%- else -%}["{{ property .name }}"]{%- if not property .required -%}?{%- endif -%}.ToString()
61
+ {%- endif -%}
62
+ {%- endif -%}
63
+ {%- endif -%}
64
+ {%- endif -%}
65
+ {%- if not loop .last or (loop .last and definition .additionalProperties ) -%},{%- endif -%}
66
+ {%- endfor -%}
67
+ {%- if definition .additionalProperties -%}
68
+ data: map
69
+ {%- endif -%}
49
70
);
50
71
51
72
public Dictionary<string , object ?> ToMap() => new Dictionary<string , object ?>()
0 commit comments