2009-05-20 77 views
0

我回用SubSonic.SqlQuery的兩個連接對象的數據集,但我似乎無法弄清楚如何執行此where子句:用字符串自定義where子句?

Month(SubmittedOn)=Month(GETDATE()) AND Year(SubmittedOn)=Year(GETDATE()) 

我試圖做這樣,但它不喜歡.IsEqualTo(字符串):

.Where("Month(SubmittedOn)").IsEqualTo("Month(getdate()") 

回答

0

你可以在一個價值僅傳遞到亞音速約束方法(IsEqualTo),所以下面將獲得3月提交的所有行:

.Where("Month(SubmittedOn)").IsEqualTo(3) 

下面將得到所有行提交當月:

.Where("Month(SubmittedOn)").IsEqualTo(DateTime.Now.Month) 
0

看起來你缺少一個括號。嘗試:

.Where("Month(SubmittedOn)").IsEqualTo("Month(getdate())") 
+0

良好的漁獲,但似乎並沒有解決它: SubSonic.SqlQueryException:轉換轉換VARC時失敗har值'Month(getdate())'到數據類型int。 – Scott 2009-05-20 15:32:00

+1

我不知道SubSonic,但可以將它重寫爲: 。其中(「Month(SubmittedOn)= Month(getdate())」) – RedFilter 2009-05-20 15:54:07

相關問題