배열을 업데이트하는 코드가 있습니다 (집합에 추가).AddToSetEach 연산자가 올바른 쿼리를 반환하지 않습니다 (Builders v 2.4.4)
이var data = new[] { 10, 20, 30 };
var fieldName = "data";
var oldWay = Update.AddToSetEach(fieldName , new BsonArray(data));
Console.WriteLine($"Old way:\n {oldWay.ToJson()} \n\n");
이 완벽하게 작동 및 인쇄 : 코드는 현재 기존 빌더를 사용하는 새 빌더 클래스를 사용하려고 할 때
Old way:
{ "$addToSet" : { "users" : { "$each" : [10, 20, 30] } } }
을하지만, 나는 제대로 동작하지 않습니다. MongoDB.Driver 2.4.4을 사용하고 있습니다. 내 코드 :
var data = new[] { 10, 20, 30 };
var fieldName = "data";
var newWay = Builders<BsonDocument>.Update.AddToSetEach(fieldName, new BsonArray(data)).ToJson();
Console.WriteLine($"New way:\n {newWay} \n\n");
출력은 다음과 같습니다
New way:
{ "_t" : "AddToSetUpdateDefinition`2" }
어떤 생각?
감사합니다.
가능한 복제 (HTTPS [나는 몽고 쉘에서 실행할 수있는 일반 json으로 몽고 쿼리에 FilterDefinition 번역] : //stackoverflow.com/questions/32047692/translate-filterdefinitiontdocument-to-regular-json-mongo-query-that-i-can-run) –
Veeram