2013-11-27 23 views
1
過濾LINQ

我的代碼:如何使用日期

var query = from s in ctx.location 
     join b in ctx.order on s.locationID 
     equals b.ID 
     join e in ctx.offerdata on b.OrderID 
     equals e.OrderID 

     where(e.delDate.ToString().Contains("2013")) 

     orderby e.identity_no 
     select new Order 
     { 
    ... 

     }; 

     return query.ToList(); 

但這IST不工作...所以必須如何我LINQ的樣子,那ICH只能看到2013年的訂單......

非常感謝!

回答

3

那麼你對這一年真的很感興趣吧?因此,嘗試:

where e.delDate.Year == 2013 

編輯:正如我們現在所知道delDateDateTime?這將是:

where e.delDate != null && e.delDate.Value.Year == 2013 
+0

@RaphaëlAlthaus:Thanks,will edit。 –

+0

好的,這個工程。但是,我怎麼做一個.Contains? – Jocelyn

+0

@Jocelyn:好吧,現在你問了一個不同的問題 - 我們不能僅僅從這個評論中看出你想要檢查什麼。因此,在新帖子中提出一個新問題,提供所有適當的信息(包括您在此問題中未提及的類型)。 –

2

用途:

e.delDate.Year == 2013

...

2

如果這是一個DateTime你爲什麼要轉換它到string

var query = from s in ctx.location 
     join b in ctx.order on s.locationID 
     equals b.ID 
     join e in ctx.offerdata on b.OrderID 
     equals e.OrderID 

     where(e.delDate.Year == 2013) 
相關問題