Working with complex JSON in C# typically requires creating class structures or escaping strings, which becomes painful for dynamic queries like those used with Elasticsearch. An alternative approach stores JSON as files, deserializes them into C# dynamic objects using Newtonsoft.Json, modifies the needed fields programmatically, then re-serializes the result. This avoids messy string escaping and keeps JSON as the source of truth. A workaround using the @ prefix handles reserved C# keywords like 'bool' when accessing dynamic object properties.