C# 带字符串的自定义where子句?
我使用两个连接对象的SubSonic.SqlQuery返回一个数据集,但我似乎不知道如何执行where子句:C# 带字符串的自定义where子句?,c#,.net,subsonic,C#,.net,Subsonic,我使用两个连接对象的SubSonic.SqlQuery返回一个数据集,但我似乎不知道如何执行where子句: Month(SubmittedOn)=Month(GETDATE()) AND Year(SubmittedOn)=Year(GETDATE()) 我试图这样做,但它不喜欢.IsEqualTostring: .Where("Month(SubmittedOn)").IsEqualTo("Month(getdate()") 看起来您缺少一个括号。尝试: .Where("Month(Su
Month(SubmittedOn)=Month(GETDATE()) AND Year(SubmittedOn)=Year(GETDATE())
我试图这样做,但它不喜欢.IsEqualTostring:
.Where("Month(SubmittedOn)").IsEqualTo("Month(getdate()")
看起来您缺少一个括号。尝试:
.Where("Month(SubmittedOn)").IsEqualTo("Month(getdate())")
您只能在亚音速中将值传递给约束方法IsEqualTo,因此以下将获得3月份提交的所有行:
.Where("Month(SubmittedOn)").IsEqualTo(3)
以下内容将获取当月提交的所有行:
.Where("Month(SubmittedOn)").IsEqualTo(DateTime.Now.Month)
捕捉得很好,但这似乎无法修复:SubSonic.SqlQueryException:将varchar值“Monthgetdate”转换为int数据类型时,转换失败。我不知道SubSonic,但您能否将其重写为:。wheremonthsubmitedon=Monthgetdate我正在尝试只搜索一列。我有一个带有“SubmittedOn”DateTime列的表,我想返回当月发生的所有记录。在SQL MONTHgetdate中,将返回当前月份,因为month是一个SQL函数。下面是SQL代码:从MonthSubmitedon=MONTHgetdate的奖项中选择*最终我也需要在那里获得年份,但是一旦我有了月份,我就可以计算出来:YearSubmittedOn=YearGETDATE也:如果我想像第一个答案中的用户一样将代码输入StackOverflow,那么代码标签是什么?好的,我想我看到了你现在想做的,我已经更新了我的答案。您可以通过在每行前面放置四个空格来设置代码格式。