2
我有一個名爲Products的集合,我試圖使用官方的mongo-csharp驅動程序枚舉。然而,只要我嘗試枚舉集合(例如使用foreach循環),我會收到以下錯誤。無法用MongoDBRef枚舉對象
「默認構造函數找不到類型MongoDB.Driver.MongoDBRef」
實體類看起來像這樣
public partial class Product
{
public BsonObjectId _id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public string Url { get; set; }
public int Price { get; set; }
public string Country { get; set; }
public MongoDBRef Merchant { get; set; }
}
集合中的條目類似於以下
{
"_id" : ObjectId("4cff739fba63c20301ee5bc5"),
"Name" : "Product Name",
"Description" : "Product Description",
"Url" : "http://mysite/products/product-name",
"Price" : 1200,
"Country" : "au",
"Merchant" : {
"$ref" : "Merchant",
"$id" : ObjectId("533981033d565e640d000000")
}
}
我正在閱讀它。
var db = Db.Instance.GetDatabase();
var matches = db.GetCollection<Product>("Product").FindAll();
在我執行以下任一操作之前,我不會收到錯誤。
var l = matches.ToList();
OR
foreach (var p in matches) {
// Do something
}
我知道你把實體類,但禁止你提供一個示例文件或兩個在你的問題?這可能有助於重現這一點。 – 2010-12-13 07:48:46
我剛剛更新了問題歡呼賈斯汀。 – Alex 2010-12-13 13:53:05