Click here to Skip to main content
11,482,402 members (73,168 online)
Rate this: bad
good
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 16:14pm
daiwuju944

1 solution

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

Solution 1

Hi,

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.

thanks
  Permalink  

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



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

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100