3

我有两点描述一个矩形:
东北纬度/经度和西南纬度/经度。

生成可以存储在DbGeography字段中的简单矩形实体的正确有效方法是什么?

请注意,稍后我想使用该字段来确定 POINT 是否在此 Rectangle 内。

我意识到我应该使用DbGeography.FromText(...)方法,但我不确定如何使用。

4

2 回答 2

8

FromText方法需要WKT表示,在本例中为多边形:

这样的事情应该可以解决问题:

DbGeography box = DbGeography.FromText(
    string.Format("POLYGON(({0} {1}, {0} {2}, {3} {2}, {3} {1}, {0} {1}))",
                         nwLongitude, 
                         nwLatitude,
                         seLatitude,
                         seLongitude), 4326);
于 2013-11-11T18:24:16.990 回答
0

如果你有 NE 和 SW 坐标,你可以使用这个:

DbGeography box = DbGeography.FromText(
        string.Format("POLYGON(({0} {1}, {0} {2}, {3} {2}, {3} {1}, {0} {1}))",
                             swLongitude,  //nwLongitude, 
                             neLatitude, //nwLatitude,
                             swLatitude, //seLatitude,
                             neLongitude, //seLongitude
    ), 4326);
于 2016-04-13T10:31:51.363 回答