2012-12-06 99 views
0

如何比較Linq中的小時?Linq比較小時

我使用C#4.0和SQL Server 2008 R2。 我的數據:

CLIENT_ID (varchar) and HORRAIRE (time 7) 

和我的代碼:

IList<LS_CLIENTHORRAIRE> LesListe; 
       using (Soft8Exp_ClientEntities oEntite_T = new Soft8Exp_ClientEntities()) 
       { 
        var query = from o in oEntite_T.LS_CLIENTHORRAIRE where o.CLIENT_ID == CLIENT_ID && o.HORRAIRE >= [the Computer Time] select o; 
        LesListe = query.ToList(); 
       } 
       return LesListe; 

回答

1

time數據類型在SQL maps toTimeSpan在.NET中,目前要比較它針對當前系統時間,你可以使用:

DateTime.Now.TimeOfDay 

所以你的查詢會是:

var query = from o in oEntite_T.LS_CLIENTHORRAIRE 
      where o.CLIENT_ID == CLIENT_ID && o.HORRAIRE >= DateTime.Now.TimeOfDay 
      select o; 

參見:DateTime.TimeOfDay

+0

感謝你,但上的TimeOfDay LINQ – user609511

1
o.HORRAIRE >= new TimeSpan(00/*hours*/, 00/*minutes*/, 00/*seconds*/) 
0
int The_Hour = DateTime.Now.Hour; 
        var query = from o in oEntite_T.LS_CLIENTHORRAIRE where o.CLIENT_ID == CLIENT_ID && o.HORRAIRE > new TimeSpan(The_Hour, 00/*minutes*/, 00/*seconds*/) select o; 
+0

無法正常工作,您應該添加一些文字到你的答案 – tuergeist