2011-11-01 2 views

답변

12

당신이 전체 수집을 업데이트하고 싶다면

var query = Query.And(
    Query.EQ("_id", "your_doc_id"), 
    Query.EQ("Statuses.Type", 1) 
); 

var result = your_collection.Update( 
    query, 
    Update.Set("Statuses.$.Timestamp", "new timestamp", UpdateFlags.Multi,SafeMode.True) 
); 

이, 당신은 _id 필터를 제거 할 수있는 특정 문서를 업데이트 할 것입니다 그래서 C#을 동등한

db.your_collection.update(
    { _id: ObjectId("your_objectid"), "Statuses.Type": 1 }, 
    { $set: { "Statuses.$.Timestamp": "new timestamp" } } 
) 

하여이 작업을 수행 할 수 있습니다 쉘

+0

이것은 완벽합니다. 감사합니다. – Redth

+0

@Redth, 도움이 되니 기쁩니다. 문제가 해결되면 답변으로 표시 할 수 있습니다 ... – RameshVel

+0

죄송합니다. 답변으로 표시했습니다. 다시 한 번 감사드립니다! – Redth

관련 문제