2015-04-07 116 views
0

我需要帮助,如何JSON数组转换为C#对象数组

我尝试JSON数组转换为C#对象数组, 这里是我的JSON

{"jsonString":"{\"MemberSeletedId\":[358753,358754]}"} 

,这是我的C#对象类:

public class BOMemberSeletedId 
{ 
    public int MemberSeletedId { get; set; } 
} 

我如何获得memberselectedid(阵列)内JSON的C#阵列

这里是C#我的转换方法

public string convert(string jsonString) 
{ 
    JavaScriptSerializer js = new JavaScriptSerializer(); 
    List<BOMemberSeletedId> param = js.Deserialize<List<BOMemberSeletedId>>(jsonString); 

    return param; 
} 

我曾试图内部解决方案:

Convert json to a C# array?

但仍然没有解决我的问题

能有人帮助?

感谢

+1

看样子你有JSON在一个字符串内在一些JSON里面。您需要从外部JSON中检索该字符串,然后解析/反序列化内部JSON。 – Richard

回答

1

您的财产被宣布为一个int - 尽管它是在JSON的数组。它看起来像你应该反序列化JSON的BOMembint[erSelectedID,但MemberSeletedId属性应该是一个int[]List<int>

public class BOMemberSeletedId 
{ 
    public List<int> MemberSeletedId { get; set; } 
} 

BOMemberSeletedId param = js.Deserialize<BOMemberSeletedId>(jsonString); 
List<int> values = param.MemberSeletedId; 
... 

(你将不能够,如果从你的方法直接返回这个你方法声明为返回一个string,当然...)

(我假设jsonString只是{"MemberSeletedId":[358753,358754]}由这点。)