gpt4 book ai didi

c# - 如何在 C# 中创建新对象列表?

转载 作者:太空宇宙 更新时间:2023-11-03 21:03:24 27 4
gpt4 key购买 nike

我想为列表创建一个对象列表。我知道可以在下面执行此操作,但这不是我想要的。

view.BindingContext =
new ViewModel
{
List = new List<Section> {
new Section
{
Title = "Chapter 1",
List = new List<Reading> {
new Reading { Title = "Title" Text = "abc" },
new Reading { Title = "Title" Text = "abc" },
new Reading { Title = "Title" Text = "abc" },
new Reading { Title = "Title" Text = "abc" },
new Reading { Title = "Title" Text = "abc" },
new Reading { Title = "Title" Text = "abc" },
new Reading { Title = "Title" Text = "abc" },
}
},
}
};

我想从另一个对象列表创建新对象,而不是上面的代码。所以像这样;

view.BindingContext =
new ViewModel
{
List = new List<Section>
{
foreach(Chapter chapter in ChapterList)
{
new Section { Title = chapter.Title, List = chapter.ReadingList },
}
}
};

最佳答案

好吧,您可以在初始构造之后 循环。在一个声明中做所有事情被高估了。

但是!

new List<Foo>(oldList.Select(x => new Foo { A = x.A, B = x.B, ... }))

应该作为列表和列表项的简单克隆,就像:

oldList.ConvertAll(x => new Foo { A = x.A, B = x.B, ...})

或(如评论中所述)

oldList.Select(x => new Foo { A = x.A, B = x.B, ... }).ToList()

关于c# - 如何在 C# 中创建新对象列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43109257/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com