Sql LINQ中的GETDATE()
LINQ中的Sql LINQ中的GETDATE(),sql,linq,Sql,Linq,LINQ中的GETDATE()的替代选项是什么 我从以下帖子中找到了一些解决方法: 是否有更好的方法?在这种情况下,不需要执行执行任务或单独的函数调用?就我所见,使用linq to sql,您所指的文章就是一种方式。我看不出还有什么比这更好的了。这是一个相当优雅的解决方案 有了实体框架,就有可能使用。除此之外,即使使用DateTime.Now在linq to entities(不是linq to sql)中,它也会被转换为GetDate: context.Companies.Select
GETDATE()
的替代选项是什么
我从以下帖子中找到了一些解决方法:
是否有更好的方法?在这种情况下,不需要执行
执行任务
或单独的函数调用?就我所见,使用linq to sql,您所指的文章就是一种方式。我看不出还有什么比这更好的了。这是一个相当优雅的解决方案
有了实体框架,就有可能使用。除此之外,即使使用DateTime.Now
在linq to entities(不是linq to sql)中,它也会被转换为GetDate
:
context.Companies.Select (c => DateTime.Now);
翻译为:
SELECT
GetDate() AS [C1]
FROM [dbo].[Company] AS [Extent1]
如果只想获取数据库日期,情况就不同了。在这种情况下,我看不出有什么能比从VB执行查询更好
私有函数GetServerDate()作为日期时间
Using context As New DirectEDISQLEntities
Dim Query = context.Reports_MailList.[Select](Function(c) DateTime.Now).FirstOrDefault
Return Query
End Using
End Function
等于
从[dbo]中选择SysDateTime()作为[C1]。[Reports\u MailList]作为
[扩展1]
您可以尝试以下方法:
using (DataContext dboContext = new DataContext())
{
var dQuery = dboContext.Database.SqlQuery<DateTime>("SELECT getdate()");
return dQuery.AsEnumerable().First();
}
使用(DataContext dboContext=newdatacontext())
{
var dQuery=dboContext.Database.SqlQuery(“选择getdate()”);
返回dQuery.AsEnumerable().First();
}
一种不需要“ExecuteQuery”或单独函数调用的方法。没有额外的函数调用,您只需这样键入即可。这将是一个单一的查询。签入SQL profiler.Linq到SQL或实体框架或其他什么?