.net DbGeometry.FromGml()的参数
我试图使用System.Data.Entity程序集中的.net DbGeometry.FromGml()的参数,.net,spatial,.net,Spatial,我试图使用System.Data.Entity程序集中的System.Data.Spatial.DbGeometry.FromGml(),但我无法使用简单的测试用例 [Test] public void DbGeometry_FromGml() { StringBuilder xml = new StringBuilder(); xml.Append(@"<gml:PolygonPatch>"); xml.Append(@"<gml:exterior
System.Data.Spatial.DbGeometry.FromGml()
,但我无法使用简单的测试用例
[Test]
public void DbGeometry_FromGml()
{
StringBuilder xml = new StringBuilder();
xml.Append(@"<gml:PolygonPatch>");
xml.Append(@"<gml:exterior>");
xml.Append(@"<gml:Ring>");
xml.Append(@"<gml:curveMember>");
xml.Append(@"<gml:segments>");
xml.Append(@"<gml:GeodesicString>");
xml.Append(@"<gml:posList> -25.07842078 124.85121167 -24.07829967 114.86532597 </gml:posList>");
xml.Append(@"</gml:GeodesicString>");
xml.Append(@"</gml:segments>");
xml.Append(@"</gml:curveMember>");
xml.Append(@"</gml:Ring>");
xml.Append(@"</gml:exterior>");
xml.Append(@"</gml:PolygonPatch>");
DbGeometry g = DbGeometry.FromGml(xml.ToString());
}
因为它说顶级元素必须包含一个PolygonPatch,所以我试着将它包装在父节点中(并将名称空间的内容移动到父节点),但没有什么不同
所以我很困惑:输入这种方法的GML应该是什么样子
更新
尝试了一个更简单的对象(点),但遇到了类似的问题。我从文本中创建了一个DbGeometry,然后转储它的GML,它与我的输入不同,所以我认为它可能与GML版本有关
DbGeometry point = DbGeometry.FromText("POINT (0 0)");
string gml = point.AsGml();
System.Console.WriteLine(gml);
输出
0 0
因此点包含一个
而不是
DbGeometry point = DbGeometry.FromText("POINT (0 0)");
string gml = point.AsGml();
System.Console.WriteLine(gml);