Я не понимаю, как я могу правильно выводить идентификатор при отображении объектов. Это либо ObjectId()
, что я не могу разобрать обратно объект или какой-либо объект, в котором есть идентификатор, который я могу проанализировать, но это выглядит странно.C# MongoDb - Поле вывода идентификатора правильно?
Обратите внимание, что сопоставление его с классом не является вариантом, оно должно быть полностью динамическим, поскольку разные пользователи имеют разные поля.
Код
public List<object> Get()
{
var client = new MongoClient("mongodb://localhost");
var server = client.GetServer();
var database = server.GetDatabase("api_test");
var collection = database.GetCollection("users");
var json = collection.FindAllAs<BsonDocument>().ToJson(new JsonWriterSettings { OutputMode = JsonOutputMode.Strict });
var obj = JsonConvert.DeserializeObject<List<object>>(json);
return obj;
}
Пример
[
{
"_id": {
"$oid": "528e7f9bb1fece903aa9b246"
},
"Name": "Steve",
"Age": 60
},
{
"_id": {
"$oid": "528e7fabb1fece903aa9b247"
},
"Name": "Alice",
"Age": 44
}
]
То, что я хотел бы
[
{
"_id": "528e7f9bb1fece903aa9b246",
"Name": "Steve",
"Age": 60
},
{
"_id": "528e7fabb1fece903aa9b247",
"Name": "Alice",
"Age": 44
}
]