字符串值由MongoDB存储在数组中

时间:2016-02-21 17:56:35

标签: c# mongodb

我正在尝试在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,其中包含一个字符串值,而不仅仅是一个字符串,请参阅我的管理界面中显示结果的屏幕截图从我的代码。

enter image description here

任何想法如何让我的代码直接存储字符串而不将其放在数组中?

1 个答案:

答案 0 :(得分:1)

PushAddToSeat是数组运算符。如果您需要存储标量值,则需要使用Set

var update = Builders<BsonDocument>.Update.Set("address", "MyStreet 1");

Documentation for .Net driver