2012-01-01 2 views
1

Я использую драйвер 10Gen .net для MongoDB и запросы объектов, которые имеют пустые свойства коллекции, являются нулевыми. Поэтому я попытался установить коллекции в конструкторе объекта, но после десерилизации он снова равен нулю.Обработка свойств NULL в драйвере MongoDb

Есть ли какие-либо настройки, в которых драйвер установит свойства коллекции как пустую коллекцию вместо нуля?

+0

Не помните, что вы можете это сделать точно, но почему бы не использовать ['[BsonIgnoreIfNull]'] (http://www.mongodb.org/display/DOCS/CSharp+Driver+Serialization+Tutorial#CSharpDriverSerializationTutorial- Ignoringnullvalues). Разве это не помогает? – balexandre

ответ

2

Я не совсем понимаю, что вы имеете в виду. Можете ли вы предоставить образец декларации класса и результирующий документ, когда он сериализуется?

Если свойство collection было null, когда вы его сериализовали, оно будет null, когда вы его десериализуете. Если свойство collection является пустой коллекцией при сериализации, тогда она также будет пустой коллекцией при ее десериализации. Вы всегда должны возвращаться к тому, что было, когда вы его сериализовали.

+0

Вы правы, десерилизация дает то, что я точно сохранил. Я просто забыл назначить коллекцию emtpy при сохранении. – AnyOne

Смежные вопросы