1
我開始與選擇對視圖&一個SQL查詢看起來是這樣的:如何使用RIA服務將SQL查詢轉換爲LINQ?
SET @id = ...
SET @variableDate = ...
SELECT Id,
dbo.fnGreaterDateTime(ViewDate,@variableDate) AS GreaterDate,
FROM vwExample
WHERE Id = @id
SQL函數fnGreaterDateTime
作品如你所願,返回兩個值中的較大者在通過
我在使用EF & RIA服務時無法將其轉換爲LINQ查詢。在我的域名服務,我想能夠做到像下面這樣:
public IQueryable<ExampleViewResult> GetExampleViewResults(int id, DateTime variableDate)
{
var query = from r in this.ObjectContext.ExampleViewResults
where r.Id == id
select new ExampleViewResult
{
Id = r.Id,
ViewDate = (r.ViewDate > variableDate) ? r.ViewDate : variableDate
}
return query;
}
但是,當我把這個方法我收到一條「實體或複雜類型ExampleViewResult不能在LINQ來構建一個錯誤到實體查詢「。
我嘗試了this線程的一些建議,但是當我使用域服務方法返回一個DTO列表時,自動代碼生成不包括在我的域上下文中使用的方法。
任何想法?
如果你VAR listResults = this.OjbectContext.ExampleViewResults.ToList()會發生什麼;然後var query = from r in listResults ... –
這不能是你的實際代碼,因爲這不會被編譯(缺少;)。這讓我覺得你刪除了你認爲不相關的部分,以及那些可能成爲問題根源的部分。請發佈完整的代碼。 – cadrell0
@ cadrell0 - 我確實刪除了一些在示例中只是噪音的部分。你指的是哪個問題?我正在尋找另一種編寫查詢的方法。 –