For my function
public static IEnumerable<CallbackListRecord> LoadOpenListToProcess(CallbackSearchParams usp){}
This line errors when the sequence contains no elements (as it should)
CallbackListRecord nextRecord = CallbackSearch.LoadOpenListToProcess(p).First();
I have changed it to the following
                CallbackListRecord nextRecord = null;
            IEnumerable<CallbackListRecord> nextRecords = CallbackSearch.LoadOpenListToProcess(p);
            if (nextRecords.Any())
            {
                nextRecord = nextRecords.First();
            }
Are there better, easier or more elegant ways to determine if the IEnumerable sequence has no elements?