我正在生成实体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),这非常棒。 –