If you need case insensitive key dictionary in C# and you serialize object into MongoDb, you need to write your own serializer.
MongoDb is a great database, but you need to keep an eye to log files, because they can grow indefinitely
If you upgraded MongoDb C# driver to the latest version and suddenly tests start failing and code start throwing strange error, it is possible that you where affected by a change in immutable serializer strategy class.
Why using server code and a database when all you need is a static code generator?