Недавно я перешел в новый MongoDB С# драйвер v2.0 из устарел v1.9.
Теперь, когда я сериализую класс, у которого есть словарь, я иногда запускаю следующий BsonSerializationException
:
MongoDB.Bson.BsonSerializationException: при использовании DictionaryRepresentation. Значения ключа документа должны сериализоваться как строки.
Здесь минимальное воспроизведение:
class Hamster
{
public ObjectId Id { get; private set; }
public Dictionary<DateTime,int> Dictionary { get; private set; }
public Hamster()
{
Id = ObjectId.GenerateNewId();
Dictionary = new Dictionary<DateTime, int>();
Dictionary[DateTime.UtcNow] = 0;
}
}
static void Main()
{
Console.WriteLine(new Hamster().ToJson());
}