MongoCollection<Document> doesn't make sense to me. This is much harder to use in code than just MongoCollection. Why was it genericized? What else can you have a collection of besides documents? This seems like potentially it wasn't the best way to design this. Or maybe it's just that the documentation needs to be improved to make it clearer what the purpose of this is.