我在使用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