我有一个非常简单的结构。
Pair<double, double>
我们说我有{First:5.0,Second:10.0}
个实例。序列化工作正常,我得到了预期的{0; 0}
例如。
但每当我尝试反序列化时,我都会得到默认值JsonConstructor
。当我将JsonConstructor
属性添加到构造函数时,一切都按预期工作。
我原本以为Json.NET能够在如此简单的情况下按惯例找到构造函数,但似乎没有。如果还有其他方法,我想避免添加这个属性,因为这会在这个较低级别的util库中引入对Json.NET的依赖。
如果没有Tuple
属性并且无需编写大量自定义值转换器代码,有没有办法正确执行此操作?
注1
我知道内置的Tuple
类型,我也猜测这些类型是本机支持的。在这种情况下,我有一个较旧的代码库,使用这个结构很多,所以我目前无法使用Name
。