【发布时间】:2018-08-14 13:48:35
【问题描述】:
我正在创建一个从网站获取信息和下载电影的应用程序。我已经成功地将信息设置在不同的数组中,并将它们组合到一个数组中。
但是,现在我试图将该数组放入一个更大的数组中(想要使用 JSON),但这是失败的。
我当前的 Json 输出如下所示:
{"moviedata":
["http:/xxxx","title title ","k0X0HrYtMm5u"],"tags":
["x","x","x","Prop","x","x","x","x","x","x","x"],"categorydata":
["x","x","x"]}
通过以下代码实现:
Dictionary<string, string[]> movie = new Dictionary<string, string[]>();
moviedata.Add("moviedata", moviegenerala);
moviedata.Add("tags", tagsa);
moviedata.Add("categorydata", categoriesa);
string moviejson = JsonConvert.SerializeObject(moviedata);
我想在此之上添加另一个图层,因此有一个名为“电影”的常规选项卡,并且对于每部电影,它都有此信息。我该怎么做?
更新: 添加此代码:
var myShape = new
{
Movie = new Dictionary<string, string[]>
{
["moviedata"] = moviegenerala,
["tags"] = tagsa,
["categorydata"] = categoriesa,
["localdata"] = localdataa
}
};
var moviejson = JsonConvert.SerializeObject(myShape);
JSON 似乎是正确的,但它无法解析,在第一个列表之后它说在右括号后面有文本。
更新: 将代码更改为:
Dictionary<string, string[]> movies = new Dictionary<string, string[]>();
var myShape = movies.Select(m => new
{
Movie = new Dictionary<string, string[]>
{
// TODO - you'll need to get the appropriate data for this movie
["moviedata"] = moviegenerala,
["tags"] = tagsa,
["categorydata"] = categoriesa,
["localdata"] = localdataa
}
});
var moviejson = JsonConvert.SerializeObject(myShape);
File.AppendAllText("moviedata.txt", moviejson);
但现在它只给出空括号:(
【问题讨论】: