2009-06-23 16 views
5

Belirli bir tarihte ile Saturday arasındaki Date alanı arasındaki kayıtları seçen where ifadesini nasıl yazarım. date söz konusu tarihtirGeçerli tarihi seçin LINQ

Data Fields: Id, Name, Date 

cevap

12

, nasıl:

DateTime start = date.Date.AddDays(-(int)date.DayOfWeek), // prev sunday 00:00 
     end = start.AddDays(7); // next sunday 00:00 

    var qry = from record in data 
       where record.Date >= start // include start 
       && record.Date < end // exclude end 
       select record; 
1
DateTime givenDate = DateTime.Today; 
DateTime startOfWeek = givenDate.AddDays(-1 * givenDate.DayOfWeek); 
DateTime endOfWeek = startOfWeek.AddDays(7); 

var query = myObjects 
    .Where(ob => startOfWeek <= ob.DateField && ob.DateField < endOfWeek) 
İlgili konular