Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# linq获取数据行并基于列迭代每个字段_C#_Linq - Fatal编程技术网

C# linq获取数据行并基于列迭代每个字段

C# linq获取数据行并基于列迭代每个字段,c#,linq,C#,Linq,我有一个Datatable,我试图检查Datatable中的某一行是否全部为null或空。我有一个linq语句,通过索引获取行,我可以看到行值,但我不知道如何检查值属于哪一列,以及值是否为null或空。当我在foreach中并且在本例中有名为“row”的datarow时,如何查找列名和列值 或: 对你的问题不是很确定,你知道之前的列名吗,你知道要比较的值吗?如何比较不同的类型?是的,我知道列名,我只是想检查整个datarow是否为null或0,除了我知道的一个字段 int rowIndex =

我有一个Datatable,我试图检查Datatable中的某一行是否全部为null或空。我有一个linq语句,通过索引获取行,我可以看到行值,但我不知道如何检查值属于哪一列,以及值是否为null或空。当我在foreach中并且在本例中有名为“row”的datarow时,如何查找列名和列值

或:


对你的问题不是很确定,你知道之前的列名吗,你知道要比较的值吗?如何比较不同的类型?是的,我知道列名,我只是想检查整个datarow是否为null或0,除了我知道的一个字段
int rowIndex = 9; 
DataTable.AsEnumerable().Where((row, index) => index == rowIndex).ToList()
.ForEach(row => {
               //Trying to iterate thru each column in the row
               //Check the column Name that currently on
               //get the value
            });
var ColumnToIngorn = DataTable.Columns["XXX"].Ordinal;
var ArrItem = DataTable.Rows[rowIndex].ItemArray.Where((item, indexColumn) => indexColumn != ColumnToIngorn);

foreach (var item in ArrItem)
    ...
var ArrItem = DataTable.Rows[rowIndex].ItemArray.Select((item, indexColumn) => new { index = indexColumn, value = item });

foreach (var item in ArrItem)
{
    if (item.index == 5) //Check index column
        ...
    if (DataTable.Columns[item.index].ColumnName == "XXX") //check name column
        ...
}