gpt4 book ai didi

c# - Linq ForEach - 返回不能将 'void' 分配给隐式类型的局部变量

转载 作者:太空狗 更新时间:2023-10-30 00:14:17 25 4
gpt4 key购买 nike

我正在尝试使用 linq 查询来为自己节省几行代码。我在被告知的地方遇到编译错误:

Returning cannot assign 'void' to an implicitly-typed local variable.

var GIANTLIST = new List<string>();

var taskIds = Complaint.Tasks.Select(s => s.Task_ID).ToList().ForEach( s =>
{
GIANTLIST.Add("<Task_ID=" + s.ToString() + ">");
});

我正在尝试更好地理解 linq 查询。我知道它有一个“void”返回类型?如果是这种情况,我该如何添加到列表中?

最佳答案

Foreach 不返回任何结果;您不能将其分配给变量。删除 var taskIds:

var GIANTLIST = new List<string>();

Complaint.Tasks.Select(s => s.Task_ID).ToList().ForEach( s =>
{
GIANTLIST.Add("<Task_ID=" + s.ToString() + ">");
});

这里有关于它的微软文档https://msdn.microsoft.com/en-us/library/bwabdf9z%28v=vs.110%29.aspx

I'm trying to understand the linq query better. I understand that it's got a "void" return type? If this is the case how am I able to then add to the list?

将此 ForEach 视为通常的功能 ForEach ForEach(var a in MyList),它不返回任何内容也是无效的。在 ForEach 内部,您可以直接修改类的变量。

关于c# - Linq ForEach - 返回不能将 'void' 分配给隐式类型的局部变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30672827/

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