ss_*_*alk 5 sql linq sql-server entity-framework spatial
我想使用 dbgeography 的“Intersects”方法(我使用的是 EF June 2011 CTP)在 LINQ 中编写一个连接语句。问题是如果我写这样的东西:
var joinQuery = from spQ in spatialTableQuery
join mnQ in MainQuery
on spQ.Polygon.Intersects(mnQ.PointGeography) equals 1
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
名称“mnQ”不在“equals”左侧的范围内。考虑交换'equals'两边的表达式。
在 SQL 中,我编写了一个类似的查询,如下所示,所以我知道 SQL 支持它:
SELECT * FROM Address a
INNER JOIN SPATIALTABLE b
WITH(INDEX(geog_sidx))
ON b.geom.STIntersects(a.PointGeography) = 1
Run Code Online (Sandbox Code Playgroud)
尝试这样的事情:
var joinQuery =
from spQ in spatialTableQuery
from mnQ in MainQuery
where spQ.Polygon.Intersects(mnQ.PointGeography) = 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
702 次 |
| 最近记录: |