首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实体框架: SqlGeography与DbGeography

实体框架: SqlGeography与DbGeography
EN

Stack Overflow用户
提问于 2014-04-20 19:45:41
回答 1查看 7.2K关注 0票数 15

这两个对象在Microsoft数据库中表示相同的地理数据类型,其目的或目的是什么?

代码语言:javascript
复制
System.Data.Entity.Spatial.DbGeography

代码语言:javascript
复制
Microsoft.SqlServer.Types.SqlGeography

它们不能相互转换,但是SqlGeography在创建点、多边形等方面有额外的命令。

我认为System.Data.Entity只适用于实体框架,而Microsoft.SqlServer是直接使用SqlCommand时使用的吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-20 20:07:56

你说得对,本质上就是这么简单。DbGeography只是一个简化的SqlGeography版本,旨在在Entity Framework中工作。最流行的SqlGeography方法已经在其中实现了,但正如您正确指出的那样,并不是所有的方法都实现了。

虽然这两种类型不能相互直接转换,但在需要SqlGeography的附加功能时,转换它们的过程相对简单。

例如:

代码语言:javascript
复制
SqlGeography geog1 = SqlGeography.STPolyFromText('<coords>', srid);
SqlGeography geog2;
DbGeography dbGeog;

// SqlGeography to DbGeography
dbGeog = DbGeography.FromText(geog1.ToString(), srid);
// DbGeography to SqlGeography
geog2 = SqlGeography.Parse(dbGeog.AsText());
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23186832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档