我想寫類似下面的代碼 -傳遞參數給LINQ謂詞
public IQueryable<Invoice> InvoiceFilterForMonthAndYear(DateTime? monthAndYear = null)
{
var invoices = _invoices.Where(MonthAndYearPredicate(monthAndYear);
return invoices;
}
private bool MonthAndYearPredicate(Invoice invoice, DateTime? monthAndYear)
{
//code to check if the invoice start or end dates is from the falls in the month I am checking for
}
但由於謂詞預計只有一個參數,我不能使用謂詞這樣。
我知道我可以寫InvoiceFilterForMonthAndYear
的Where子句來完成這項工作,但是我想把比較邏輯放到它自己的方法中。
'我=> MonthAndYearPredicate(I,monthAndYear)' – Marc
@ USER1這將編譯,但查詢供應商將無法處理的。 – Servy
啊,都是LTE。錯過了標籤。 – Marc