Reputation: 72
I work to select stations according to the following conditions code
var NStations = stations.AsEnumerable()
.Where(r => r.Field<double>("Distance") < SP_Radius)
.OrderBy(r => r.Field<double>("Distance"))
.CopyToDataTable();
The problem if no data matches the first condition, I will get error stop the program.
How can I avoid this problem where no datarow is retrieved?
ERROR :
The source contains no DataRows.
It check the first condition and one go to the second condition to order it give the above error.
Upvotes: 2
Views: 3077
Reputation: 101681
You can separate your query into two parts:
var result = stations.AsEnumerable()
.Where(r => r.Field<double>("Distance") < SP_Radius);
if(result.Any())
{
var NStations = result.OrderBy(r => r.Field<double>("Distance"))
.CopyToDataTable();
}
Upvotes: 3