有人可以帮助我序列化IList<IShows>
.我设法在JsonConvert.SerializeObject
的帮助下对其进行了序列化,但是...假设我有这样的课程:
public class Show : IShow
{
public string Name { get; set; }
public IList<IEpisode> Episodes { get; set; }
public int Count { get; set; }
}
public class Episode : IEpisode
{
public string Name { get; set; }
public DateTime Date { get; set; }
public IList<ILink> Links { get; set; }
}
public class Link : ILink
{
public string URL { get; set; }
public string Name { get; set; }
public string Quality { get; set; }
}
我得到类似的东西:
[
{
"Name": "Supernatural",
"Episodes": [
{
"Name": "There's Something About Mary",
"Date": "2017-05-12T02:20:05+01:00",
"Links": [
{
"URL": "url",
"Name": "HDTV",
"Quality": "480p"
},
{
"URL": "url",
"Name": "HDTV",
"Quality": "720p"
}
]
}
]
}
]
但我想在每个节目(节目(之前添加额外的标签,在所有节目之前添加另一个标签(节目(。
有人知道该怎么做吗?
这可能不是 JSON 的本意,结构对我来说看起来不错。
但是如果你真的需要,你可以做这样的事情:
public class Root {
public IList<ShowWrapper> Shows { get; set;}
}
public class ShowWrapper { //silly name though ;)
public IShow Show { get; set;}
}
并序列化根的实例而不是
IList<IShow>.
这应该产生所需的结构,但感觉非常不自然。
顺便说一句,您使用什么序列化程序。也许有人知道一种不那么"手动"的方式来实现这一目标。