我正在尝试在MongoDB中存储字符串值,这是我目前正在使用的C#代码:
var filter = Builders<BsonDocument>.Filter.Eq("_id", "pk-0");
var update = Builders<BsonDocument>.Update.Push("address", "MyStreet 1");
update = update.AddToSet("Address 2", "MyStreet 2");
await Collection.UpdateOneAsync(filter, update, new UpdateOptions { IsUpsert = true });
奇怪的是,AddToSet()
和Push()
方法都创建了一个数组1,其中包含一个字符串值,而不仅仅是一个字符串,请参阅我的管理界面中显示结果的屏幕截图从我的代码。
任何想法如何让我的代码直接存储字符串而不将其放在数组中?
答案 0 :(得分:1)
Push
和AddToSeat
是数组运算符。如果您需要存储标量值,则需要使用Set
:
var update = Builders<BsonDocument>.Update.Set("address", "MyStreet 1");