显然我在这里遗漏了一些东西,但我看不到
List<Item> Items = new List<Item>().Add(new Item() { Code = "12223", ExGroup = 2});
错误信息是
无法将类型隐式转换
void
为List<>
谢谢
使用object initializer
列表。你不能这样调用Add
,因为它返回void
,而不是它List
本身。试试这个:
List<Item> Items = new List<Item>
{
new Item { Code = "12223", ExGroup = 2 }
};
您需要在两行上执行此操作:
List<Item> Items = new List<Item>();
Items.Add(new Item() { Code = "12223", ExGroup = 2});
您收到错误的原因是该List<T>.Add
方法不返回任何内容,并且您Items
应该被从右侧返回的内容填充。
这是 Add 方法的签名。
public void Add(
T item
)
或者像这样
List<Item> Items = new List<Item>{
new Item() { Code = "12223", ExGroup = 2}
};
您不能将 Add 与对象初始值设定项一起使用。List.Add 返回 void,当您初始化列表时,这是不期望的。改用这个:
List<Item> Items = new List<Item>
{
new Item { Code = "12223", ExGroup = 2 }
};
或者,如果您仍想使用 Add,那么您可以按照 Habib 的说明将代码分成两行。
希望这可以帮助。
如果您想在一行中执行此操作,请使用Collection Initializer
如:
List<Item> Items = new List<Item>
{ new Item() { Code = "12223", ExGroup = 2 } };