DataGridView
所有,我在(DGV)中有行。为了测试添加到此 DGV 的项目是否已经存在,我编写了一个方法,该方法使用以下 LINQ 查询返回匹配行的行索引(而不是for/foeach
循环):
IEnumerable<int> rowCol = this.dataGridViewAttachList.Rows.Cast<DataGridViewRow>()
.Where(row => row.Cells[(int)DgvColumns.DatabaseName].Value.ToString()
.Equals(databaseName, StringComparison.OrdinalIgnoreCase))
.Select(row => row.Index);
我的问题是:为什么我必须使用 投射Cast<DataGridViewRow>()
?我第一次尝试不使用它,但我花了一段时间才解决这个问题。但我不清楚为什么有必要?
谢谢你的时间。