我有JSON对象,我想转换为C#对象。
要在C#中创建类,我使用http://json2csharp.com/页面。
但转换器并不好。
我的JSON对象:
declarations
我收到的对象如下所示:
{
"data": {
"krs_podmioty.data_sprawdzenia": "2016-12-22T05:36:21",
"krs_podmioty.regon": "0",
"krs_podmioty.adres_lokal": "",
"krs_podmioty.adres_miejscowosc": "Warszawa",
"krs_podmioty.liczba_czlonkow_komitetu_zal": 0,
}
}
我不知道为什么数据有public class Data
{
public DateTime __invalid_name__krs_podmioty.data_sprawdzenia { get; set; }
public string __invalid_name__krs_podmioty.regon { get; set; }
public string __invalid_name__krs_podmioty.adres_lokal { get; set; }
public string __invalid_name__krs_podmioty.adres_miejscowosc { get; set; }
public int __invalid_name__krs_podmioty.liczba_czlonkow_komitetu_zal { get; set; }
}
。
我尝试剪切 __ invalid_name__krs_podmioty 但是来自krs_podmioty.object
包的JsonConvert.DeserializeObject<Data>
无法正常工作。
任何人都知道出了什么问题?我该怎么做才能解决它?
答案 0 :(得分:4)
请查看这是否适合您。拥有一个包含 data
的根对象非常重要。
此外,在属性名称与实际JSON属性名称不同的情况下,使用JsonPropertyAttribute
会有所帮助。
public class Rootobject
{
public Data data { get; set; }
}
public class Data
{
[JsonProperty(PropertyName = "krs_podmioty.data_sprawdzenia")]
public DateTime krs_podmiotydata_sprawdzenia { get; set; }
[JsonProperty(PropertyName = "krs_podmioty.regon")]
public string krs_podmiotyregon { get; set; }
[JsonProperty(PropertyName = "krs_podmioty.adres_lokal")]
public string krs_podmiotyadres_lokal { get; set; }
[JsonProperty(PropertyName = "krs_podmioty.adres_miejscowosc")]
public string krs_podmiotyadres_miejscowosc { get; set; }
[JsonProperty(PropertyName = "krs_podmioty.liczba_czlonkow_komitetu_zal")]
public int krs_podmiotyliczba_czlonkow_komitetu_zal { get; set; }
}
如果不,请显示从中获取JSON的位置,并显示序列化为JSON的对象的结构。
答案 1 :(得分:2)
我试过这段代码。这对我有用:
public class Data
{
[JsonProperty(PropertyName = "krs_podmioty.data_sprawdzenia")]
public DateTime data_sprawdzenia { get; set; }
[JsonProperty(PropertyName = "krs_podmioty.regon")]
public string regon { get; set; }
[JsonProperty(PropertyName = "krs_podmioty.adres_lokal")]
public string adres_lokal { get; set; }
[JsonProperty(PropertyName = "krs_podmioty.adres_miejscowosc")]
public string adres_miejscowosc { get; set; }
[JsonProperty(PropertyName = "krs_podmioty.liczba_czlonkow_komitetu_zal")]
public int liczba_czlonkow_komitetu_zal { get; set; }
}
var json = "{ \"data\": { \"krs_podmioty.data_sprawdzenia\": \"2016 -12-22T05:36:21\", \"krs_podmioty.regon\": \"0\", \"krs_podmioty.adres_lokal\": \"\", \"krs_podmioty.adres_miejscowosc\": \"Warszawa\", \"krs_podmioty.liczba_czlonkow_komitetu_zal\": 0,} }";
var t = JsonConvert.DeserializeObject<Data>(json);