C# 从数据库中获取更晚的日期而不计算筛选的日期
我试图通过下面的查询从数据库中获取“更大的”/“更晚的日期” 控制器C# 从数据库中获取更晚的日期而不计算筛选的日期,c#,asp.net,asp.net-mvc,entity-framework,linq,C#,Asp.net,Asp.net Mvc,Entity Framework,Linq,我试图通过下面的查询从数据库中获取“更大的”/“更晚的日期” 控制器 string str = "2019-10-27T20:44:55.323"; DateTime Date = Convert.ToDateTime(str); var List = (from a in dbcontext.system_notification where a.notification_date > Date select a).ToList(); 输出 我仍然从日期“2019-10-27T20
string str = "2019-10-27T20:44:55.323";
DateTime Date = Convert.ToDateTime(str);
var List = (from a in dbcontext.system_notification where a.notification_date > Date select a).ToList();
输出
我仍然从日期“2019-10-27T20:44:55.323”中得到了结果。
由于我使用了“>”运算符,所以我只希望从给定的日期中获取较晚的日期
谢谢
DateTime结构将日期表示为64位数字,用于测量自特定开始日期以来的“刻度”数。一千万个滴答声等于一秒钟
见:
现在,将其与以下内容进行比较:
日期时间精度:0.00333秒[默认为EF]
日期时间2精度:100纳秒
因此,很可能数据库中的值实际上更大或更圆 您可以通过检查增量来测试这一点:
foreach (var dt in List)
{
var delta = Date - dt;
// check the value.
}
DateTime结构将日期表示为64位数字,用于测量自特定开始日期以来的“刻度”数。一千万个滴答声等于一秒钟
见:
现在,将其与以下内容进行比较:
日期时间精度:0.00333秒[默认为EF]
日期时间2精度:100纳秒
因此,很可能数据库中的值实际上更大或更圆 您可以通过检查增量来测试这一点:
foreach (var dt in List)
{
var delta = Date - dt;
// check the value.
}
您可以按以下方式进行尝试: 应避免使用保留字或关键字作为变量名
string str = "2019-10-27T20:44:55.323";
DateTime dt = Convert.ToDateTime(str);
var lst = dbcontext.system_notification.where(x => x.notification_date > dt).ToList();
您可以按以下方式进行尝试: 应避免使用保留字或关键字作为变量名
string str = "2019-10-27T20:44:55.323";
DateTime dt = Convert.ToDateTime(str);
var lst = dbcontext.system_notification.where(x => x.notification_date > dt).ToList();
我明白了,我只是知道。但是这种情况有什么解决办法吗?。如何从结果中排除筛选出的日期?好吧,您的c#
DateTime
相当于sqlDateTime2
。因此,您需要调整字符串以匹配下一个可用值。如果您需要这种精度,您可能还需要更改sql类型。我明白了,我知道这一点。但是这种情况有什么解决办法吗?。如何从结果中排除筛选出的日期?好吧,您的c#DateTime
相当于sqlDateTime2
。因此,您需要调整字符串以匹配下一个可用值。如果您需要这种精度,您可能还需要更改sql类型。这些方法对您有帮助吗?这些方法对您有帮助吗?