我有这样的代码:Json.NET隐式转换
class Sometype
{
public Number pos { get; set; }
}
class Number
{
private uint num;
private Number(uint num)
{
this.num = num;
}
public static implicit operator uint(Number sid)
{
return sid.num;
}
public static implicit operator Number(uint id)
{
return new Number(id);
}
}
这JSON:{"pos":123}
当我尝试反序列化,我得到一个JsonException Error converting value 123 to type 'Tester2.Program+Number'.
。请建议我。
你试过'公共静态隐式操作数(字符串ID) { 返回新号码(uint.Parse(ID)); }'? –
我不太明白这是如何工作的。在json中,'123' *是一个数字。 – blower135
是的,它是一个数字。但如果由于任何原因JsonType认为它是一个字符串,这将是一个非常快速和容易的检查。 –