我正在编写一些与空间相关的示例,并决定尝试使用Dapper,虽然EF具有空间支持,但我很喜欢再次控制我的SQL(感谢Sam和Marc)。
然而,我需要能够拥有支持DbGeography类的POCO。例如:
public class BuriedTreasure {
public int PirateId { get; set; }
public DbGeography MarksTheSpot { get; set; }
}
我的谷歌技能让我失望了,最接近的匹配是 这个 问题,尽管它只适用于将空间支持添加为参数(所以它达到了50%的效果)。
就我所看到的,我的选择受限于以下选项,但对我来说,两者都不是可行的解决方案:
1. 自定义dapper代码以理解SQL Server特定类型 2. 在我的POCO中指定LONG、LAT&ELEVATION小数,并在我的存储过程中创建SPATIAL类型,再使用另一个过程检索值(或使用持久化计算列,但几乎相同)
还有其他替代方法吗?