如何使用内联 C# 语句在可观察集合中分配多个集合

本文关键字:集合 观察 分配 何使用 语句 | 更新日期: 2023-09-27 18:32:16

我有一个模型集合

public class MobileModelInfo
{
    public string Name { get; set; }
    public string Catagory { get; set; }
    public string Year { get; set; }
}

在这里,我需要使用单个语句在new ObservableCollection<MobileModelInfo>()中分配多个集合,而无需使用mobList.Add(),如以下语句

ObservableCollection<MobileModelInfo> mobList = new ObservableCollection<MobileModelInfo>(
    (new MobileModelInfo { Name = "S4", Catagory = "Smart Phone", Year = "2011" }),
    (new MobileModelInfo { Name = "S5", Catagory = "Smart Phone", Year = "2013" }),
    (new MobileModelInfo { Name = "S6", Catagory = "Ultra Smart Phone", Year = "2015" })
);

但它会生成编译时错误,请帮助我通过内联语句实现此目的。

注意:请勿建议mobList.Add()

如何使用内联 C# 语句在可观察集合中分配多个集合

一个ObservableCollection接受一个List<T>IEnumerable<T>或什么都不作为参数。

您忘记在添加项目之前声明列表。像这样尝试:

ObservableCollection<MobileModelInfo> mobList = new ObservableCollection<MobileModelInfo>(new List<MobileModelInfo>(){
    new MobileModelInfo { Name = "S4", Catagory = "Smart Phone", Year = "2011" },
    new MobileModelInfo { Name = "S5", Catagory = "Smart Phone", Year = "2013" },
    new MobileModelInfo { Name = "S6", Catagory = "Ultra Smart Phone", Year = "2015" }
});