在vnext中,使用实体框架7 (https://github.com/aspnet/EntityFramework)在为表创建模型时如何使用模型中的空间数据类型(例如DbGeography)来保存点、形状等。
例如:
public DbGeography gps_points {get; set;}我不能使用DbGeography。
更新:
确认后,EF7中还没有此功能,但可能在以后的版本中可用。
要跟踪任何更改,请参见:
发布于 2014-11-27 08:20:33
参考实体框架的github存储库中的你自己的问题,似乎还没有实现。由于里程碑设定为“待办事项”,这个问题似乎不会在不久的将来得到解决。
如果不需要在数据库端(例如,在边界框或交叉口中搜索)处理数据,则可以将数据保存为众所周知的文本。如果将来EF7支持空间数据,这可以很容易地转换成数据库几何类型。
请注意数据库的字符串长度限制,因为对于复杂的形状,WKT可以保持安静。
发布于 2014-11-25 11:07:35
您需要添加对System.Data.Entity.Spatial的引用。我不认为它现在默认包含在EF引用下,因此您不能使用DbGeography。
记住,一切都是即插即用的!
发布于 2014-11-27 08:56:12
在EF5中引入了对空间类型的支持。但是,在EF5中,仅当应用程序目标并在.NET 4.5上运行时才支持空间类型。
从EF6开始,针对.NET 4和.NET 4.5的应用程序支持空间类型。
Microsoft提供程序依赖于可能需要安装的其他一些低级别库。
使用Microsoft 实现空间类型的先决条件
Server空间支持依赖于特定于Server的低级类型SqlGeography和SqlGeometry.这些类型位于Microsoft.SqlServer.Types.dll程序集中,此程序集不作为EF的一部分或.NET框架的一部分提供。
安装Visual时,它通常还会安装Server版本,这将包括安装Microsoft.SqlServer.Types.dll。
如果要在要使用空间类型的计算机上安装Server,或者如果空间类型被排除在Server安装之外,则需要手动安装它们。这些类型包含在Server功能包中,Server 2008和Server 2012存在不同的程序集。
https://stackoverflow.com/questions/27008634
复制相似问题