2016-09-27 51 views
-1

我與C#應用程序的工作RethinkDB查詢數據 - 從網絡界面或C#應用程序(使用驅動程序)運行時,我已經創建了索引的領域之一,但得到了不同的結果RethinkDB排序依據忽略

這裏是我的查詢網頁UI:

r.db('db_data').table('table_data').orderBy({index:r.desc('my_index')}).limit(1) 

,這裏是我的C#代碼:

RethinkDB.R. 
    Db(mSelectedDB). 
    Table(mSelectedTable). 
    OrderBy(RethinkDB.R.Desc("my_index")).OptArg("index", "my_index"). 
    Limit(1) 
    Run(conn); 

當我從網絡上運行我得到正確最後結果,但形式C#應用程序我得到第一 - 所以我的OrderBy不起作用,我在這裏做錯了什麼?在C#中,ATM只能工作的解決方案是使用Nth(-1)而不是Limit(1)+ R.Desc,但速度較慢,所以我寧願避免它。

環境:2015年VS,RethinkDb.Driver.2.3.15

+3

您的標題有誤導性。如果有的話,這不是C#語言問題,它是一個rethinkdb問題。請澄清你的問題,包括數據結構 –

+0

嘗試'OrderBy()。OptArg(「index」,RethinkDB.R.Desc(「my_index」))''而不是。免責聲明:未經測試,因爲直到5分鐘前,我對RethinkDB一無所知,但是我要通過[文檔](https://rethinkdb.com/api/java/order_by/)。 –

+0

試圖(無參數),不起作用 –

回答

1

稍微困惑的問題,但如果你是從排序依據獲得的第一個結果,並且希望最後你嘗試過使用OrderByDescending?

RethinkDB.R. 
Db(mSelectedDB). 
Table(mSelectedTable). 
OrderByDescending(RethinkDB.R.Desc("my_index")).OptArg("index", "my_index"). 
Limit(1) 
Run(conn); 
+0

對不起,我會優先評論這個問題,但我不能評論 – CopyPasterino

+0

RethinkDb.Driver.2.3.15中沒有這樣的方法 –