Click here to Skip to main content
Rate this: bad
Please Sign up or sign in to vote.
See more: C# LINQ
I have a datatabel, in which I want to find any duplicated record(for example, the mobile phone number). I use following code in LINQ:
var list_mobile = dataTable_QueryResult.Rows.OfType<DataRow>().Select(x => x["mobile"].ToString());
var q_mobile = from x in list_mobile
           group x by x into g
           let count = g.Count()
           orderby count descending
           select new { Value = g.Key, Count = count };
foreach (var x in q_mobile)
    if (x.Count > 1)
        Label_Alarm.Visible = true;
It comes an error when some rows have been deleted - visiting the row that has been deleted. I want to use the Where() command to exclude those deleted rows, but I don't know how to code it in LINQ? Could anyone help me this ? Thanks!
Posted 21-Nov-12 15:14pm

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

I think RowState should work in this case,
Please try below code,
dataTable_QueryResult.Rows.OfType<datarow>().Where(s => s.RowState != DataRowState.Deleted).Select(x => x["mobile"].ToString());</datarow>
Let me know if it is not working for you, although i have not tried yet.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 420
1 DamithSL 253
2 Sergey Alexandrovich Kryukov 210
3 Peter Leow 205
4 Maciej Los 195

Advertise | Privacy | Mobile
Web02 | 2.8.140709.1 | Last Updated 23 Nov 2012
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid