Jas*_*son 2 c# json deserialization servicestack
我试图将以下JSON表示反序列化为强类型对象.我可以从c# - > json序列化它,但反之亦然.
C#
public class Package
{
public Guid Id {get;set;}
public List<string> Email {get;set;}
public List<Items> Items {get;set;}
}
public class Items
{
public string Uri {get;set;}
public int Width {get;set;}
public int Height {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
JSON
{
"Id":"84fd8751-6107-41af-9473-65aae51e042a",
"Email":[
"j@t.com"
],
"Items":"[
{"Uri":"http://localhost/foo.jpg","Width":234,"Height":313},
{"Uri":"http://localhost/bar.jpg","Width":234,"Height":174}]"
}
Run Code Online (Sandbox Code Playgroud)
用于反序列化的代码
var instance = JsonSerializer.DeserializeFromString<Package>(jsonData);
Run Code Online (Sandbox Code Playgroud)
instance创建了对象,并且有2个项目对象,instance.Items但它们的所有属性都为null.
TIA
您在Items值周围有引号,因此将它们解析为字符串而不是数组/列表.删除它们赢得胜利.
"Items":[
{"Uri":"http://localhost/foo.jpg","Width":234,"Height":313},
{"Uri":"http://localhost/bar.jpg","Width":234,"Height":174}]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1031 次 |
| 最近记录: |