2013-11-09 85 views
0
Expression<Func<BAL.Receipt, bool>> expKeyword = x => x.InvoiceNo.StartsWith(txtSearch.Text) | x.Alias.StartsWith(txtSearch.Text); 
Expression<Func<BAL.Receipt, bool>> expFromDate = x => x.Date > dtpFrom.DateTime.Date; 
Expression<Func<BAL.Receipt, bool>> expToDate = x => x.Date <= dtpTo.DateTime; 

var ac = BAL.ApplicationInfo.db.Receipts.Where(expKeyword); 
if (dtpFrom.EditValue != null) 
    ac.Where(expFromDate); 
if (dtpTo.EditValue != null) 
    ac.Where(expToDate); 

的預期結果應與日期返回所有的Receipts大於dtpFrom日期 和小於dtpToDatetxtSearch.Text等於InvoiceNoAlias這個表達式爲什麼不給我預期的結果?

+0

你想要什麼去做?你期待什麼結果? – Ian

+0

預期的結果應該返回所有收據的日期大於dtpFrom日期和小於dtpToDate和txtSearch.Textequal發票否或別名 –

+0

實際結果是? –

回答

4

ac.Where(expFromDate);
但是,ac=ac.Where(expFromDate);

+0

@DoobyInc firslty你說ac = /一些表達式/。然後你說ac = ac./some其他表達式/因此*追加*一個新的。這是正確的,試試吧。 – LINQ2Vodka

+0

它有效的朋友 –

+0

我已經標記了你的答案作爲答案,也做了upvote –

相關問題