我希望EF使用T-SQL表值函數來過濾實體。在Entity Framework中按服務器功能過濾實體?
該函數返回CompanyID的列表,以便EF可以添加一個WHERE語句像
...WHERE CompanyID IN (SELECT CompanyID FROM dbo.BySearchOptions({0},{1}))
這樣,以後我可以創造像
IQueryable<Company> BySearchOptions(this IQueryable<Company, SearchOptions options)
的擴展方法,並與其他類似
IT連鎖var companies = Entities.Companies.
Where(someconde).BySearchOptions(myOptionsObject).OrderBy.Whatever...
這可能嗎?
編輯:我知道有Entity SQL,所以Where()方法可以使用ESQL字符串而不是謂詞。實體SQL可以用於應用t-sql函數嗎?
謝謝,但我希望過濾器與連接,組等中使用的其他子句鏈接在一起。 – Evgenyt 2010-11-19 16:34:59