我有一个从中接收数据的 API。该 API 无法控制它的结构,我需要序列化和反序列化 JSON 输出以将数据映射到我的模型。
在 JSON 使用命名属性很好地格式化的情况下,一切都很好。
如果没有命名值并且只有一个整数和字符串数组,你能做什么?就像在位置下
这是 JSON 的示例:
{"id":"2160336","activation_date":"2013-08-01","expiration_date":"2013-08-29","title":"Practice Manager","locations":{"103":"Cambridge","107":"London"}}
我有类似的模型:
public class ItemResults
{
public int Id { get; set; }
public DateTime Activation_Date { get; set; }
public DateTime Expiration_Date{ get; set; }
public string Title { get; set; }
public Location Locations { get; set; }
}
public class Location
{
public int Id { get; set; }
public string value { get; set; }
}
我正在使用内置的 ajax 序列化进行映射:
protected T MapRawApiResponseTo<T>( string response )
{
if ( string.IsNullOrEmpty( response ) )
{
return default( T );
}
var serialize = new JavaScriptSerializer();
return serialize.Deserialize<T>( response );
}
var results = MapRawApiResponseTo<ItemResults>(rawApiResponse);
因此,ID 和所有其他属性都被拾取和映射,但我所做的每件事似乎都无法映射位置。
非常感谢