private static UrlData GetNextEntry(UrlData[] entries, UrlData thisEntry) { if (entries.Count() == 1) { return UrlData.Empty(); } if (entries.Last().Equals(thisEntry)) { // last in list so return one before return entries[entries.Length - 2]; } var previousEntry = UrlData.Empty(); foreach (var entry in entries.Reverse()) { if (entry.Equals(thisEntry)) { return previousEntry; } previousEntry = entry; } // not found - should never happen return entries.Last(); }
private static UrlData GetLastEntry(UrlData[] entries) { return entries.Any() ? entries.Last() : UrlData.Empty(); }