C# 带日期的亚音速3.0 ActiveRecord

C# 带日期的亚音速3.0 ActiveRecord,c#,sql-server,subsonic,date-format,C#,Sql Server,Subsonic,Date Format,我有一点疑问 在我的数据库中,日期时间存储为YYYY MM dd HH:MM:ss 我有以下LINQ查询: var visitors = Visitor.All().Where(x=>x.Date_Moderated < dateTime).OrderByDescending(x => x.Date_Moderated).Take(limit); var visitors=Visitor.All()。其中(x=>x.Date\u mediatedx.Date\u mediat

我有一点疑问

在我的数据库中,日期时间存储为YYYY MM dd HH:MM:ss

我有以下LINQ查询:

var visitors = Visitor.All().Where(x=>x.Date_Moderated < dateTime).OrderByDescending(x => x.Date_Moderated).Take(limit);
var visitors=Visitor.All()。其中(x=>x.Date\u mediatedx.Date\u mediated)。接受(限制);
问题是,这被转化为:

SELECT TOP (100) [t0].VisitorId, <COLUMNS TRUNCATED FOR BREVITY AND PRIVACY>
FROM [dbo].[Visitor] AS t0
WHERE ([t0].[Date_Moderated] < '07/12/2010 18:53:58')
ORDER BY [t0].[Date_Moderated] DESC
选择顶部(100)[t0]。VisitorId,
来自[dbo]。[Visitor]作为t0
其中([t0].[Date_Moderated]<'07/12/2010 18:53:58')
订单由[t0].[Date_Moderated]描述
如您所见,date参数的格式不正确,SQL Server将其转换为US datetime,因此我没有得到任何结果,而实际上我应该得到100

有人知道如何使亚音速格式的日期正确吗?或者另一种更好的方法来构造我的查询

问候,,
Rob

我通过将查询更改为以下内容来解决此问题:

var myDb = new MyDB(); //Database context renamed for privacy
var select = myDb.Select.Top("100")
                        .From("Visitor")
                        .Where("Date_Moderated")
                        .IsLessThan(dateTime.ToString("yyyy-MM-dd HH:mm:ss"))
                        .OrderDesc("Date_Moderated");

var visitors = select.ExecuteTypedList<Visitor>();
var myDb=new myDb()//为保护隐私而重命名数据库上下文
var select=myDb.select.Top(“100”)
.来自(“访客”)
.在哪里(“审核日期”)
.IsLessThan(dateTime.ToString(“yyyy-MM-dd HH:MM:ss”))
.OrderDesc(“审核日期”);
var visitors=select.ExecuteTypedList();