[BsonDefaultValue("")] hanya berlaku saat membaca dokumen dari database yang tidak memiliki nilai untuk bidang terkait. Jika Anda ingin objek baru yang Anda buat di memori memiliki nilai selain nol, Anda perlu menetapkan nilai itu di konstruktor Anda. Juga, ketika Anda menyimpan objek ke database jika bidangnya nol maka itulah yang disimpan dan dibaca kembali.
Jadi, tetapkan nilai default di konstruktor Anda untuk menangani objek baru yang dibuat di memori (dan mungkin dimasukkan ke database) dan gunakan [BsonDefaultValue] untuk menangani pembacaan kembali dokumen yang mungkin tidak memiliki bidang yang sesuai.