什么是 sheet = sheetList.FirstOrDefault(ws => ws.Name == string.Format(name, i));意思?
What does sheet = sheetList.FirstOrDefault(ws => ws.Name == string.Format(name, i)); mean?
我正在开发具有以下代码行的 Excel 加载项:
sheet = sheetList.FirstOrDefault(ws => ws.Name == string.Format(name, i));
这是什么意思?更具体地说,我不知道 ws => ws.Name
是什么意思。
Enumerable.FirstOrDefault
是一种适用于任何 IEnumerable<T>
的扩展方法。它的目的是产生与给定 Func<T, bool>
匹配的第一个项目,这相当于一个谓词。
这个谓词将做的是尝试将项目的名称 ws.Name
与从 string.Format(name, i)
.
返回的另一个字符串相匹配
它的作用相当于:
foreach (var sheet in sheetList)
{
var formattedSheetName = string.Format(name, i);
if (sheet.Name == formattedSheetName)
{
return sheet;
}
}
表示从sheetList
提供First
sheet其Name
=string.Format(name, i)
.
很像
Sheet sheet = null;
foreach(Sheet ws in sheetList)
{
if (ws.Name == string.Format(name, i))
{
sheet = ws;
break;
}
}
sheet = sheetList.FirstOrDefault(ws => ws.Name == string.Format(姓名, i));
我正在开发具有以下代码行的 Excel 加载项:
sheet = sheetList.FirstOrDefault(ws => ws.Name == string.Format(name, i));
这是什么意思?更具体地说,我不知道 ws => ws.Name
是什么意思。
Enumerable.FirstOrDefault
是一种适用于任何 IEnumerable<T>
的扩展方法。它的目的是产生与给定 Func<T, bool>
匹配的第一个项目,这相当于一个谓词。
这个谓词将做的是尝试将项目的名称 ws.Name
与从 string.Format(name, i)
.
它的作用相当于:
foreach (var sheet in sheetList)
{
var formattedSheetName = string.Format(name, i);
if (sheet.Name == formattedSheetName)
{
return sheet;
}
}
表示从sheetList
提供First
sheet其Name
=string.Format(name, i)
.
很像
Sheet sheet = null;
foreach(Sheet ws in sheetList)
{
if (ws.Name == string.Format(name, i))
{
sheet = ws;
break;
}
}
sheet = sheetList.FirstOrDefault(ws => ws.Name == string.Format(姓名, i));