I want to filter data table using LINQ

I have a DataTable (dtInput) and I want to filter rows based on multiple conditions using LINQ:

  • Status = "Approved"
  • Amount > 1000
  • Region contains "West" (case-insensitive)

I need the filtered result as a new DataTable.
What is the correct LINQ query for this?

Hi @Lalit_Chaudhari1 ,

Use an Assign activity:

dtFiltered = (From r In dtInput.AsEnumerable()
Where r(“Status”).ToString.Trim.Equals(“Approved”) _
AndAlso CDbl(r(“Amount”)) > 1000 _
AndAlso r(“Region”).ToString.ToUpper.Contains(“WEST”)
Select r).CopyToDataTable()

Try this

2 Likes

dtFiltered = dtInput.AsEnumerable().
Where(Function(row) row(“Status”).ToString = “Approved” AndAlso
CDbl(row(“Amount”)) > 1000 AndAlso
row(“Region”).ToString.ToLower.Contains(“west”)).
CopyToDataTable()

1 Like

Hi @Lalit_Chaudhari1

you can use the LINQ queries with filter condition later convert into datatable

Use assign activity and create variable dtinput as datatable and use this query as value

dtInput.AsEnumerable().
Where(Function(r) r(“Status”).ToString() = “Approved” _
AndAlso CDbl(r(“Amount”)) > 1000 _
AndAlso r(“Region”).ToString().IndexOf(“West”, StringComparison.OrdinalIgnoreCase) >= 0).
CopyToDataTable()

Cheers

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.