我在我的项目中使用asp.net MVC。我的数据库表包含一些记录。该表具有记录的日期时间列。我想得到上周添加的记录。所以LastlyRecords
是:
DateTime.Now = 04.04.2015
LastWeekDateTime = 28.04.2015
LastWeekDateTime < LastlyRecords < DateTime.Now
答案 0 :(得分:0)
有一个方法接受&#34;开始日期&#34;和&#34;结束日期&#34;作为参数。
使用开始/结束日期调用它,例如:
GetRecords(DateTime.Now.AddWeeks(-1), DateTime.Now);
在那里,您可以在该日期范围之间获取存储过程获取记录(或者为实体框架或您正在使用的任何内容执行类似操作)。
你可以通过GETDATE()和DATEADD()在T-SQL中做类似的事情,但是在调用代码中进行范围计算可能更好(因为它更像是一个业务逻辑事物而不是数据访问的事情)。
答案 1 :(得分:0)
您必须在查询中编写逻辑,或者您可以根据日期时间范围在下面进行修改。
var lastweek = DateTime.Now.AddDays(7);
var records = d in db.Persons
where DateTime.Compare(lastweek, d.DateRecordColumn)
and DateTime.Compare(d.DateRecordColumn, DateTime.Now)
select d;
希望这有助于解决您的疑问!!!
答案 2 :(得分:0)
string dateTime = "01 April 2015 Wednesday 16:23";
DateTime time1 = Convert.ToDateTime(dateTime);
if (DateTime.Compare(DateTime.Now, time1) == 1 && // DateTime.Now > time1
DateTime.Compare(time1, DateTime.Today.AddDays((int)-7)) == 1 // time1 >= DateTime.Now-7days
)
{
@("True.")
}
else
{
@("False.")
}
结果是真的,所以它是在上周。