0

I have an asp.NET application where I use a LinqDataSource control to fill a ListView control. Here's the code for my LinqDataSource control's OnSelecting command:

protected void lds_Selecting(object sender, LinqDataSourceSelectEvenArgs e)
{
    var db = new Models.EF.Entities();
    e.Result = from x in db.Sliders
                where x.IsPublic == true
                select x;
}

This works great but now I want to run an if statement in the case that the result is empty. How can I see if the result is empty?

Gilad Green
  • 36,708
  • 7
  • 61
  • 95
Barry Michael Doyle
  • 9,333
  • 30
  • 83
  • 143

1 Answers1

1

Use the Any method. Plus, LinqDataSourceSelectEvenArgs stores the data as an object so cast so use the as to get the IEnumerable<T> on which you can run the Any:

e.Result = (from x in db.Sliders
            where x.IsPublic == true
            select x);

var collection = e.Result as IEnumerable<Slider>;
if(collection != null && !collection.Any()) 
{ 
    /*your code*/
}
Gilad Green
  • 36,708
  • 7
  • 61
  • 95