所有,我有DataGridView
(DGV)中的行。为了测试是否被添加到这个DGV该项目是已经存在我写它采用以下LINQ查询返回匹配行(而不是for/foeach
环路)的行索引的方法:LINQ行索引检索铸造要求
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>()
进行施放?我第一次尝试没有它,它花了我一段时间来解决这个问题。但是我不清楚为什么这是必要的?
谢谢你的时间。