2015-04-21 69 views
1

我知道Mongodb for Linq不支持操作!
因此,我發現LINQ中的Mongo C#驅動程序組爲group by
我已經閱讀了mongo-csharp-driver的例子,但是這些不是帶有過濾的組例子。
請告訴我,謝謝。如何過濾Mongo C#驅動程序中的集合?

這是我的代碼。

var Table = DatabaseLinq.GetCollection<Model.Urls>(TableName).FindAll().AsQueryable(); 
var queryData = (from item in Table 
     group item by item.Url) 
     .OrderByDescending(p => p.Sum(x => x.ViewsCount)) 
     .Skip((PageIndex - 1) * PageSize) 
     .Take(PageSize); 

這是我的羣組,但是如何在此處添加過濾器?

+0

這是我的分組,但是,如何添加過濾器? –

回答

1

可以使用Find()代替.FindAll()方法添加過濾器,這樣的:

var Table = DatabaseLinq.GetCollection<Model.Urls>(TableName) 
    .Find(Query<Model.Urls>.EQ(x => x.Url, "Ken")).AsQueryable(); 
var queryData = (from item in Table 
     group item by item.Url) 
     .OrderByDescending(p => p.Sum(x => x.ViewsCount)) 
     .Skip((PageIndex - 1) * PageSize) 
     .Take(PageSize); 
+0

謝謝!!!!!!!!!! –

+0

什麼是查詢程序集? – Elaine

+0

[This is legacy now](http://api.mongodb.com/csharp/current/html/M_MongoDB_Driver_Builders_Query_EQ.htm) – VMAtm

0
var Filter = new BsonDocument("ProductName", "WH-208"); 
var list = await collection.Find(Filter).ToListAsync(); 

在上述線「產品名稱」是鍵,「WH-208」是值以搜索。

Refference

相關問題