LINQ中判斷日期時間段


1)轉換日期格式為DateTime類型

DateTime dtToday = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd"));//今天
DateTime dtNexDay = Convert.ToDateTime(DateTime.Now.AddDays(1).ToString("yyyy-MM-dd"));//明天
DateTime dtMonthFirstday = Convert.ToDateTime(new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1).ToString("yyyy-MM-dd"));//本月
DateTime dtThreeMonth = Convert.ToDateTime(new DateTime(DateTime.Now.Year, DateTime.Now.AddMonths(-3).Month, 1).ToString("yyyy-MM-dd"));//3個月前
DateTime dtYearFirstday = Convert.ToDateTime(new DateTime(DateTime.Now.Year, 1, 1).ToString("yyyy-MM-dd"));//今年

2)使用LINQ判斷日期

var query = db.Query<UserInfo>().Where(c=>c.Date>dtToday&&c.Date<dtNexDay)


PS:一般判斷方法,使用DateTime的Compare方法

  string startTime = db.UserInfo.FirstOrDefault().StartTime;
  string endTime = db.UserInfo.FirstOrDefault().EndTime;

  DateTime startDT = Convert.ToDateTime(startTime);
  DateTime endDT = Convert.ToDateTime(endTime);

  DateTime nowDT = DateTime.Now;

  if(DateTime.Compare(nowDT,startDT ) > 0 && DateTime.Compare(nowDT,endDT )< 0)
  {
    ConSole.WriteLine("現在處於startTime 和endTime 之間的時間段");
  }

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM