包含List<>;作为类中的参数
本文关键字:参数 List lt gt 包含 | 更新日期: 2023-09-27 18:21:43
我有2个类,我想给它添加一个列表。我会使用复选框来填写我的列表。但现在我应该如何创建列表?
public class DocPart
{
public string Title { get; set; }
public string TexLine { get; set; }
}
public class DocConfig
{
public string Description { get; set; }
public List<DocPart> Parts { get; set; }
public static DocConfig LoadFromString(string jsonData)
{
var serializer = new DataContractJsonSerializer(typeof(DocConfig));
var ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonData));
var config = (DocConfig)serializer.ReadObject(ms);
return config;
}
public string SaveToString()
{
var serializer = new DataContractJsonSerializer(typeof(DocConfig));
var ms = new MemoryStream();
serializer.WriteObject(ms, this);
return Encoding.UTF8.GetString(ms.ToArray());
}
}
例如,我想在开始时创建两个项目的列表。我想到了这个代码:
var doc = new DocConfig();
doc.Description = "bla bla";
doc.Parts = new List<DocPart>();
doc.Parts.Add(new DocPart { Title = "aaa", TexLine = @"'include{aaa.tex}"});
doc.Parts.Add(new DocPart { Title = "bbb", TexLine = @"'include{bbb.tex}" });
我该怎么做?
编辑:
此外,我如何在控制台应用程序中显示列表记录?
编辑:也许我在代码中犯了错误:
public class DocConfig
{
public string Description { get; set; }
public List<DocPart> Parts { get; set; }
DocConfig()
{
var doc = new DocConfig();
doc.Description = "bla bla";
doc.Parts.Add(new DocPart { Title = "aaa", TexLine = @"'include{aaa.tex}" });
doc.Parts.Add(new DocPart { Title = "bbb", TexLine = @"'include{bbb.tex}" });
this.Parts = new List<DocPart>()
foreach (Part part in doc.Parts)
{
Console.WriteLine(part.Title);
}
}
将以下内容添加到您的DocConfig类中:
DocConfig()
{
this.Parts= new List<DocPart>();
}
并删除
doc.Parts = new List<DocPart>();
同时阅读有关构造函数的内容,您的coud的其他部分也可以。
编辑:
要在控制台中检查您的列表,您可以使用foreach循环,这是与list:一起使用的最佳选项
foreach (var part in doc.Parts)
{
Console.WriteLine(part.Title);
}