Skip to content

Commit ddce4b8

Browse files
committed
fix: Use case-insensitive dictionary when deserializing from dictionaries/OrderedHashtables.
1 parent 69c04c1 commit ddce4b8

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

src/readme.graph.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -361,10 +361,18 @@ directive:
361361
{
362362
return $;
363363
} else {
364+
// Add using namespaces to class.
365+
let namespaceRegex = /(namespace.*.Models\n\{)/gm
366+
$ = $.replace(namespaceRegex,'$1\n\tusing System.Linq;');
367+
364368
// Change XmlDateTimeSerializationMode from Unspecified to Utc.
365369
let strToDateTimeRegex = /(XmlConvert\.ToDateTime\(.*,.*XmlDateTimeSerializationMode\.)Unspecified/gm
366370
$ = $.replace(strToDateTimeRegex, '$1Utc');
367371
372+
// Use case-insensitive dictionary when deserializing from dictionaries/OrderedHashtables.
373+
let deserializeFromDictionaryRegex = /(.*DeserializeFromDictionary\(.*IDictionary.*\n.*\{.*\n.*new.*\()content(\);)/gm
374+
$ = $.replace(deserializeFromDictionaryRegex, '$1(content.Cast<global::System.Collections.DictionaryEntry>().ToDictionary(kvp => kvp.Key as string, kvp => kvp.Value, global::System.StringComparer.OrdinalIgnoreCase))$2');
375+
368376
return $;
369377
}
370378
# Modify generated .cs model classes.

0 commit comments

Comments
 (0)