Non devi essere così dettagliato:BsonValue.Create() e BsonArray.Create non dovrebbe essere richiesto.
Infatti, quest'ultima è la causa del tuo problema:BsonArray.Create crea array di tipi di valore . Tuttavia, hai bisogno di una serie di oggetti. Se dai un'occhiata agli overload disponibili di BsonArray.Create , immagino che invocherai BsonArray.Create(IEnumerable) , che non è desiderabile.
Hai provato a usare semplicemente
MongoCollection.Update(query, Update.Set("Agents", updatedEntity.Agents), ...);
invece?
In JSON, la differenza è simile a questa:
Ad esempio,
Array semplice:[ "mongodb", "awesomness", ... ]
Array di oggetti:[ { userId: 2314234, comment: "Foo" }, { ... }, ... ]