私は答えを探すのに何時間も費やしました...これはPHPでは非常に簡単ですが、C#でまとめることができません(私はC#とmongoが初めてです...)反復しようとしています保存されたドキュメントのすべてのレベル。ドキュメントは次のようになります。
{
"_id": ObjectId("51f90101853bd88971ecdf27"),
"fields": [
{
"ID": ObjectId("51fd09498b080ee40c00514e"),
"NAME": "ID",
"TYPE": "Text"
},
{
"ID": ObjectId("51fd09a68b080ee40c0064db"),
"NAME": "Title",
"TYPE": "Text"
},
{
"ID": ObjectId("51fd09b28b080ee40c004d31"),
"NAME": "Start Date",
"TYPE": "Date"
},
{
"ID": ObjectId("51fd09c28b080ee40c007f2e"),
"NAME": "Long Description",
"TYPE": "Memo"
}
],
"name": "TODB",
"updated": "Wed Jul 31 2013 08:20:17 GMT-0400 (Eastern Daylight Time)"
}
「name」と「updated」に問題なくアクセスできますが、「fields」配列にアクセスする方法がわかりません。
これまでのコード:
{
MongoServer mongo = MongoServer.Create();
mongo.Connect();
var db = mongo.GetDatabase("forms");
mongo.RequestStart(db);
var collection = db.GetCollection("forms");
var query = new QueryDocument("name",
"TODB");
mongo.Disconnect();
}
@foreach(BsonDocument item in collection.Find(query))
{
@item.GetElement("name").Value
@item.GetElement("_id").Value
}
繰り返しますが、サブドキュメントの値ではなく、name と _id にアクセスできます。
ご協力いただきありがとうございます。読み取り値を把握したら、データも書き込みたいと思います....