【发布时间】:2011-10-19 05:08:06
【问题描述】:
我正在使用一些 ARCGis Web 服务,它们有一些不幸的 JSON 设计。例如,他们可能会给出如下内容:
{
geometryType: "esriGeometryPolygon"
geometry: {
-rings: [
-[.blah..... }}
现在,根据传入的 geometryType 值,geometry 对象可能是几种不同对象类型之一。在上面的例子中,几何节点的类型是 Polygon。
所以,问题是;在 JSON.NET 中,有什么方法可以标注这种条件类型吗?如果没有(我怀疑有),有没有办法根据上面的对象信息构建一个提供程序来反序列化该 geometry 节点?如果没有,有没有推荐的方法来解决这个问题?
编辑:我对构建自定义转换器进行了相当广泛的研究,但转换器的问题在于他们有这个抽象方法:
public override T Create (Type objectType)
但是,我无法知道在这里创建什么类型,我需要知道上面的 JSON 中指定了什么样的对象。
谢谢!
【问题讨论】: