Le pilote ne générera le champ Id pour vous que lorsque les champs sont identifiés comme _id
d'une collecte. Dans votre cas, Bar
est intégré dans le Foo
document.
Par conséquent, cela n'a pas de sens pour Bar
pour avoir un champ Id généré automatiquement.
Dans votre exemple, il n'y a vraiment aucune raison pour Bar
avoir un _id
unique . Lorsque vous interrogez la collection, vous interrogez en fonction du _id
de Foo
et vous aurez Bar
objets disponibles dans la réponse.
C'est certainement un comportement intentionnel.