diff options
Diffstat (limited to 'MediaBrowser.Model/Extensions')
| -rw-r--r-- | MediaBrowser.Model/Extensions/LinqExtensions.cs | 13 | ||||
| -rw-r--r-- | MediaBrowser.Model/Extensions/ListHelper.cs | 18 |
2 files changed, 20 insertions, 11 deletions
diff --git a/MediaBrowser.Model/Extensions/LinqExtensions.cs b/MediaBrowser.Model/Extensions/LinqExtensions.cs index 6b2bdb4c7..09ace42e8 100644 --- a/MediaBrowser.Model/Extensions/LinqExtensions.cs +++ b/MediaBrowser.Model/Extensions/LinqExtensions.cs @@ -42,6 +42,19 @@ namespace MediaBrowser.Model.Extensions return source.DistinctBy(keySelector, null); } + public static TSource[] ToArray<TSource>(this IEnumerable<TSource> source, int count) + { + if (source == null) throw new ArgumentNullException("source"); + if (count < 0) throw new ArgumentOutOfRangeException("count"); + var array = new TSource[count]; + int i = 0; + foreach (var item in source) + { + array[i++] = item; + } + return array; + } + /// <summary> /// Returns all distinct elements of the given source, where "distinctness" /// is determined via a projection and the specified comparer for the projected type. diff --git a/MediaBrowser.Model/Extensions/ListHelper.cs b/MediaBrowser.Model/Extensions/ListHelper.cs index 741f07469..6fe1793db 100644 --- a/MediaBrowser.Model/Extensions/ListHelper.cs +++ b/MediaBrowser.Model/Extensions/ListHelper.cs @@ -1,28 +1,24 @@ using System; -using System.Collections.Generic; -using System.Linq; namespace MediaBrowser.Model.Extensions { public static class ListHelper { - public static bool ContainsIgnoreCase(List<string> list, string value) + public static bool ContainsIgnoreCase(string[] list, string value) { if (value == null) { throw new ArgumentNullException("value"); } - return list.Contains(value, StringComparer.OrdinalIgnoreCase); - } - public static bool ContainsIgnoreCase(string[] list, string value) - { - if (value == null) + foreach (var item in list) { - throw new ArgumentNullException("value"); + if (string.Equals(item, value, StringComparison.OrdinalIgnoreCase)) + { + return true; + } } - - return list.Contains(value, StringComparer.OrdinalIgnoreCase); + return false; } public static bool ContainsAnyIgnoreCase(string[] list, string[] values) |
