FindAndModify
을 사용하여 문서를 수정하고 있습니다.MongoDb의 FindAndModify()가 변경된 문서를 반환하지 않습니다.
문서 유형 User
이며 수정할 수있는 요소는 web
라고 :
var users = _db.GetCollection<User>(UserCollectionName);
var userQuery = Query.EQ("user", "testuser");
var findAndModifyResult = users.FindAndModify(
new FindAndModifyArgs()
{
Query = userQuery,
Update = Update.Set("web", "testweb")
});
// user.web is unchanged in the result
var user = findAndModifyResult.GetModifiedDocumentAs<User>();
// user.web is changed in the result
user = users.FindOne(userQuery);
GetModifiedDocumentAs()
user.web
여전히 업데이트 전의 같은 값을 갖고, 변경된 인스턴스를 반환하지 않습니다.
user
에 FindOne()
을 쿼리하면 변경된 값이 표시됩니다.
제가 처리해야 할 것이 있습니까? FindAndModify()
은 수정 된 문서를 반환합니까? 나는 C#을 드라이버에서 이러한 옵션을 전송하는 방법을 잘 모르겠어요 {safe: true, 'new' : true}
:
감사합니다. 나는 안전한 깃발을 발견 할 수 없었다, 그것은 그것없이 일했다. – thumbmunkeys
그래, mongodb 2.6에서는 '안전'명령이 기본적으로 켜져 있다고 생각합니다. –