Linq error condition

Now I use code as below.

dt_Input = (
From inputrow In dt_Input
Join reportrow In dt_Report
On inputrow("SR").ToString Equals reportrow("sr1").ToString And inputrow("act").ToString Equals reportrow("act1").ToString
Where Not reportrow("Close").ToString.ToLower.Trim.Contains("working")
Select dt_Output.Rows.Add(inputrow.ItemArray)
	).CopyToDatatable

I change to as below. (add condition or )

dt_Input = (
From inputrow In dt_Input
Join reportrow In dt_Report
On inputrow(“SR”).ToString Equals reportrow(“sr1”).ToString And inputrow(“act”).ToString Equals reportrow(“act1”).ToString
Or inputrow(“SR”).ToString Equals reportrow(“sr1”).ToString
Where Not reportrow(“Close”).ToString.ToLower.Trim.Contains(“working”)
Select dt_Output.Rows.Add(inputrow.ItemArray)
).CopyToDatatable

It error.
Please guide me for solve it.

Thank you.

Hi @Stef_99

Try the below syntax:

dt_Input = (
    From inputrow In dt_Input
    Join reportrow In dt_Report
    On inputrow("SR").ToString Equals reportrow("sr1").ToString And inputrow("act").ToString Equals reportrow("act1").ToString
    Where inputrow("SR").ToString.Equals(reportrow("sr1").ToString) Or inputrow("act").ToString.Equals(reportrow("act1").ToString)
    AndAlso Not reportrow("Close").ToString.ToLower.Trim.Contains("working")
    Select dt_Output.Rows.Add(inputrow.ItemArray)
).CopyToDatatable

Regards

@vrdabberu It error a below.

Hey @Stef_99

In the above LinQ you have given a OR condition in the 4th line, We can’t use OR in Join On!

Regards,
Ajay Mishra

1 Like

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