我只想从列表中取出第一个元素并将其添加到文件中。我的问题是我不确定为什么函数“take”不起作用,因此没有编译。
ListBox 不包含“First”的定义,并且找不到接受“ListBox”类型的第一个参数的扩展方法“First”(您是否缺少 using 指令或程序集引用?
var firstItem = Ingredients.Take(1);
File.AppendAllText("Pizza.txt", firstItem + Environment.NewLine);
Take
将创建一个IEnumerable
具有指定为参数的元素数量。你正在寻找First()
var firstItem = Ingredients.First();
File.AppendAllText("Pizza.txt", firstItem + Environment.NewLine);
如果列表为空First
将抛出异常。如果列表为空,FirstOrDefault
则将返回 null(如果IEnumerable
是结构体,则返回类型默认值),根据您的用例,您应该决定哪个更适合您。
编辑
问题中的列表不是List<T>
,而是已澄清的 ListBox。您可以获取Items
属性,使用Cast
来获取IEnumerable<T>
,然后使用Fist
。我假设ListBox
are 中的对象,string
但您应该将其更改为您正在使用的任何类型:
listBox1.Items.Cast<string>().FirstOrDefault();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句