Това не е толкова грешка, колкото случай на неудовлетворени очаквания. Само на най-високото ниво _id автоматично се присвоява стойност. Всички вградени _id трябва да бъдат присвоени стойности от клиентския код (използвайте ObjectId.GenerateNewId). Също така е възможно дори да не се нуждаете от ObjectId в класа Address (каква е целта му?).