对于Web服务,我需要根据存储过程提供的数据创建动态JSON数组作为响应发送。
{{1}}
但收到的回复是数据:[[{" key":" name"," value":" 123"}, {" date":" 01-Jun-2017"}],[{" key":" name"," value& #34;:" abc"}]]
而所需的回答是:[{" name":" abc"," date":" 01-Jun-2017" },{" name":" 123"}]
任何人都可以告诉我这是什么问题吗?
先谢谢。
答案 0 :(得分:0)
也许这个图书馆可以帮助你,它可以节省你的时间
答案 1 :(得分:0)
您应该创建一个类似于JSON结构的C#类。
public class SomeClassName
{
public string name { get; set; }
public string date { get; set; }
}
然后代替字典,使用上面类的List如下:
List<SomeClassName> t = new List<SomeClassName>();
for (int i = 0; i < reader.FieldCount; i++)
{
t.Add(new SomeClassName() { name = reader.GetName(i), date = reader.GetValue(i).ToString() });
}
_response.data.Add(t);
答案 2 :(得分:0)
您可以在C#中使用匿名类型。
new { key = value, ...};
e.g。
List<object> lst = new List<object>();
lst.Add(new { Name = "Andrey", Age = 31 });
lst.Add(new { Name = "Martha" });
// print [{"Name":"Andrey","Age":31},{"Name":"Martha"}]
Console.WriteLine(JsonConvert.SerializeObject(lst));