使用NetTopologySuite针对GeoJson的IO库序列化/反序列化往返次数揭示了潜在的错误

时间:2016-08-25 22:56:15

标签: c# geojson nettopologysuite

我无法使用NetTopologySuite的GeoJsonReader反序列化Feature对象。特别是,我收到以下异常(乍一看似乎很简单,所以请继续阅读):

  

Newtonsoft.Json.dll中出现未处理的“System.ArgumentException”类型异常。附加信息:未找到预期的令牌“{”。

只是做一个简单的往返就会导致这个例外:

 public static string DoIt( Feature feature )
{

  GeoJsonWriter writer = new GeoJsonWriter();
  var geoJson = writer.Write(feature);

  GeoJsonReader reader = new GeoJsonReader();
  var deserializedFeature = reader.Read<Feature>(geoJson );

}

在这种情况下,geoJson非常简单:

  

“{\” 类型\ “:\” 功能\”,\ “几何\”:{\ “类型\”:\ “多边形\”,\ “坐标\”:[[[ - 104.50348159865847,40.891762392617345] ,[ - 104.50348672999991,40.891415817000279],[ - 104.50355999200002,40.887782408000135],[ - 104.5036332529998,40.884149000000093],[ - 104.50845260799991,40.884357883000121],[ - 104.51307160051412,40.884558081989375],[ - 104.51307160051412,40.891762392617345],[ - 104.50348159865847,40.891762392617345]] ]},\ “属性\”:NULL}“

请让我知道我做错了什么。顺便说一下,我正在使用NetTopologySuite 1.14,NetTopologySuite.IO.GeoJSON 1.14,&amp; Json.Net 9.0.1。

1 个答案:

答案 0 :(得分:1)

这实际上是一个错误。 代码已修复,请参阅#120