使用 NetTopologySuite 的 IO Library for GeoJson 序列化/反序列化往返揭示了一个潜在的错误



我在使用NetTopologySuite的GeoJsonReader来反序列化特征对象时遇到了麻烦。特别是,我收到以下异常(乍一看似乎很简单,所以请继续阅读):

类型为"System"的未处理异常。在Newtonsoft.Json.dll中发生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]]]},"属性":零}"

请让我知道我做错了什么。顺便说一下,我使用的是NetTopologySuite 1.14, NetTopologySuite. io . geojson 1.14, &Json。净9.0.1。

这实际上是一个bug。修复代码,参见#120

相关内容

最新更新