同时将对象添加到具有属性的列表中

本文关键字:属性 列表 对象 添加 | 更新日期: 2023-09-27 18:24:55

我有,

List<Items> itemDetails = new List<Item>();
itemDetails.Add(new Item { isNew = true, Description = "test description" });

为什么我不能写上面的代码像

List<Items> itemDetails = new List<Item>().Add(new Item { isNew = true, Description = "test description" });

它给出错误

Cannot implicitly convert type 'void' to 'System.Collections.Generic.List<>

同时将对象添加到具有属性的列表中

当您调用Add时,它具有void返回类型。。。这就是你出错的原因。表达式new List<Item>().Add(...)的总体结果是void

但是,您可以使用集合初始值设定项:

List<Item> itemDetails = new List<Item>
{
    new Item { isNew = true, Description = "test description" },
    new Item { isNew = false, Description = "other description" }
};

这基本上是告诉编译器将集合初始值设定项中的每个元素转换为Add调用。