我討厭將其添加到5,000+ JSON.NET deserialisation errors,但任何人都可以在下面的JSON中看到任何可能導致問題的東西嗎? JSONLint和JSONViewer都聲明該字符串是有效的,事實上它已經被JSON.NET序列化了,沒有任何問題!它所代表的關稅對象的類定義也在下面。JSON.net Deserialise錯誤 - JSON字符串有效
這讓我非常難過 - 當我使用.NET的JavascriptSerialiser類時,我也遇到了完全相同的問題。它串行化細,但在其deserialisation引發以下錯誤:
Error converting value [JSON string below] 'emAPI.ClassLibrary.Tariff'. Path '', line 1, position 374.
線1個POS 374是0,並且在字符串,其表示在類double StandingChargeValue
的端部在0.5期間之間。
任何有關如何解決任何想法?
謝謝,大衛
JSON字符串
{ "StandingChargePeriod": { "Id": 4, "Length": "Weekly", "NumbDays": 7 }, "Bands": [ { "Id": 24, "UpperkWhLimit": 23, "LowerkWhLimit": 0, "UnitRate": 2.4 }, { "Id": 25, "UpperkWhLimit": 0, "LowerkWhLimit": 24, "UnitRate": 5.8 }, { "Id": 26, "UpperkWhLimit": -1, "LowerkWhLimit": 0, "UnitRate": 5.8 } ], "Id": 10, "StartDate": "2012-12-07T00:00:00", "StandingChargeValue": 0.5 }
關稅級高清
public class Tariff
{
[ScaffoldColumn(false)]
public int Id { get; set; }
[Required]
public DateTime StartDate { get; set; }
[Required]
[Range(0, 999999999)]
public double StandingChargeValue { get; set; }
public virtual Period StandingChargePeriod { get; set; }
public virtual ICollection<TariffBand> Bands { get; set; }
}
序列化程序是否明確知道使用哪種方法來解析ICollection屬性? –
2012-07-31 22:58:05
我不這麼認爲 - 我沒有指定任何東西。然而,我已經序列化/反序列化了其他具有ICollection屬性的對象而沒有問題,並且(奇怪地)具有ICollection作爲屬性的其他對象。你知道我可以在哪裏指定如何爲特定屬性指定結核嗎? –
dav83
2012-07-31 23:09:23