2012-04-13 88 views
-1

我一直在試圖找到一個理想的方法來執行加入亞音速爲一個網站,我一直負責改變,但搜索網絡並沒有真正的幫助,它似乎是SubSonic的網站它離線爲一個而。加入亞音速查詢

這是我正在處理的 - 這是現有的查詢。

IDataReader rdr = FOO.Account.FetchByQuery(
new SubSonic.Query(FOO.Tables.Account).AddWhere(FOO.Account.Columns.MemberNumber, MemberNumber).AND(FOO.Account.Columns.Active, true)); 

我需要做的就是這樣的事情,但是這個失敗:

IDataReader rdr = FOO.Account.FetchByQuery(
new SubSonic.Query(FOO.Tables.Account, FOO.Tables.Managers).AddWhere(FOO.Account.Columns.MemberNumber, MemberNumber).AND(FOO.Account.Columns.ManagerID, FOO.Managers.Columns.ManagerID).AND(FOO.Account.Columns.Active, true)); 

有人能指出我在正確的方向,告訴我該怎麼做表使用亞音速聯接?提前致謝!

回答

1

我使用不同的語法我的查詢,但...

var qry = new Select().From(FOO.Tables.Account) 
    .InnerJoin(FOO.Tables.Managers) // If the DB has no relation specify columns. 
    .And(FOO.Account.Columns.MemberNumber).IsEqualTo(MemberNumber) 
    .And(FOO.Account.Columns.ManagerID).IsEqualTo(FOO.Managers.Columns.ManagerID); 
    .And(FOO.Account.Columns.Active).IsEqualTo(true) 
; 
var rdr = qry.ExecuteReader(); 
+0

謝謝!奇蹟般有效。 – 2012-04-16 16:12:32