我正在生成實體SQL以在我的應用程序中提供動態查詢支持。但我一直無法找到一個如何能夠使用實體框架5.實體SQL中的空間支持
使用LINQ到實體由含像空間領域的實體模型的查詢到指定實體SQL空間條件:
var a = new Model1Container();
var b = from c in a.Entity1
where c.Loc.Intersects(System.Data.Spatial.DbGeography.FromText("POINT (43 -73)"))
select c;
產生人們預期的SQL Server 2012的SQL,如:
SELECT
[Extent1].[Id] AS [Id],
[Extent1].[Loc] AS [Loc]
FROM [dbo].[Entity1] AS [Extent1]
WHERE ([Extent1].[Loc].STIntersects(geography::Parse(N'POINT (43 -73)'))) = 1
如何使用ESQL一個重寫上面的LINQ to Entities查詢?或者這是不可能的?
我爲我的遲到答覆表示歉意,但我現在才能夠深入瞭解處理此問題的代碼。我能夠將EF的源代碼從CodePlex中解放出來,並檢查您提到的類。我在那裏找到了我需要的所有功能,非常感謝!如果這些功能被記錄在案,那肯定會很棒。就我而言,我正在構建一個動態查詢編譯器,它將我讓用戶操作的分層數據結構轉換爲E-SQL。因此,能夠在文檔中查看E-SQL中可用的所有內容將非常有用。 –
該文檔當前是[這裏](http://msdn.microsoft.com/en-us/library/hh749497.aspx),這非常棒。 –