对 C# 很陌生,我正在尝试创建一个节点数据列表,其中包含链接数据的可变列表长度。
class Data
{
public List<Node> Node { get; set; }
}
public class Node
{
public string viewer { get; set; }
public int viewerId { get; set; }
public string log { get; set; }
public List <Link> Link { get; set; }
}
public class Link
{
public string keyName { get; set; }
public int value { get; set; }
我有一个 for 循环遍历配置的节点和一个内部 for 循环 获取任何已配置的链接。
Data data = new Data();
data.Node = new List<Node>();
我正在为每个新节点执行以下操作,它按照我想要的方式工作。
data.Node.Add( new Node {
viewer = setup.Device[moduleNr].viewer,
viewerId = setup.Device[moduleNr].viewerId ,
log = setup.Device[moduleNr].log
// how to add one or more lists of Link to this list???
});
我遇到的问题是在现有数据中添加一个/多个新列表。节点???
最终我想实现以下目标 -
data
|->Node
|->[0]
|->Link
|->[0]
|->keyname
|->value
|->[1]
|->keyname
|->value
|->[2]
|->keyname
|->value
|->log
|->viewerId
|->viewer
|->[1]
|->Link
|->[0]
|->keyname
|->value
|->[1]
|->keyname
|->value
|->log
|->viewerId
|->viewer
|->[2]
|->Link
|->[0]
|->keyname
|->value
|->log
|->viewerId
|->viewer
非常感谢您对此问题的帮助 - 谢谢
最佳答案
您可以添加 List<Link>
的新实例像这样并使用构造函数添加新项目:
data.Node.Add(new Node {
viewer = setup.Device[moduleNr].viewer,
viewerId = setup.Device[moduleNr].viewerId ,
log = setup.Device[moduleNr].log,
Link = new List<Link>
{
new Link
{
keyName = "Link 1",
value = 0
},
new Link
{
keyName = "Link 2",
value = 1
}
}
});
关于C# 添加列表/列表到数据类实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46319808/