Sql Server具有有用的空间聚合函数,其描述为here。
只是想知道它们是否可以通过Entity Framework API获得?
例如,我可以在Entity Framework LINQ查询中使用Envelope Aggregate吗?在Entity Framework 6中有一个类调用SqlSpatialFunctions提供了一些SQL Server空间函数,但我找不到EnvelopeAggregate函数。
实体框架是否提供任何等效的API或我需要使用原始TSQL查询>
答案 0 :(得分:0)
我无法找到基于LINQ的解决方案,但此处参考的是使用Entity Framework 6中的原始SQL查询的示例:
// Need to use SQL since EF doesn't support spatial aggregates
var querySql = @"SELECT
Geometry::UnionAggregate([SpatialBounds])
FROM [dbo].[LandgateLocation]
WHERE [Distict] = (@p0)";
var polygon = await dbContext.Database.SqlQuery<DbGeometry>(querySql, request.District).SingleAsync();