如何将json数组转换为C#对象数组

时间:2015-04-07 09:32:31

标签: c# json

我需要帮助,

我尝试将Json数组转换为C#对象数组, 这是我的json

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

这是我的c#对象类:

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

我如何在json到c#array

中获得memberselectedid(数组)

这是我在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 个答案:

答案 0 :(得分:2)

您的属性被声明为单个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]}。)