ienumerable- все статьи тега


Список приведения к IEnumerable

Я все еще изучаю некоторые из этих вещей c#, и я не мог найти ответ на этот вопрос. Предположим, что у меня есть список MyObject, реализующих MyInterface public class MyObject : IMyInterface { ...} public List<MyObject> MyObjectList; Как я могу вернуть IEnumerable<IMyInterface> с содержимым MyObjectList? Я имею в виду, прямо сейчас у меня есть это: List<IMyInterface> temp = new List<IMyInterface>(); foreach (MyObject obj in MyObjects) temp.Add(obj); return (IEnum ...

C# 4.0 'dynamic' и оператор foreach

Незадолго до того, как я обнаружил, что новое ключевое слово dynamic плохо работает с оператором C#foreach: using System; sealed class Foo { public struct FooEnumerator { int value; public bool MoveNext() { return true; } public int Current { get { return value++; } } } public FooEnumerator GetEnumerator() { return new FooEnumerator(); } static void Main() { foreach (int x in new Foo()) { Console.WriteLine(x); ...

Получить предыдущий и следующий элемент в IEnumerable с помощью LINQ

У меня есть IEnumerable пользовательского типа. (Что я получил от SelectMany) У меня также есть пункт (myItem) в том IEnumerable, что я желаю предыдущий и следующий пункт из IEnumerable. В настоящее время я делаю желаемое следующим образом: var previousItem = myIEnumerable.Reverse().SkipWhile( i => i.UniqueObjectID != myItem.UniqueObjectID).Skip(1).FirstOrDefault(); Я могу получить следующий элемент, просто вставив .Reverse. или , я мог бы: int index = myIEnumerable.ToList().Fi ...

Альтернатива IEnumerable.Пропустить(1).Возьмите(1).Одиночный()

У меня трудное время с кажущейся легкой и неловкой проблемой. Все, что мне нужно, - это следующий элемент в IEnumberable без использования Skip(1).Возьмите(1).Одиночный(). Этот пример иллюстрирует основную проблему. private char _nextChar; private IEnumerable<char> getAlphabet() { yield return 'A'; yield return 'B'; yield return 'C'; } public void sortAlphabet() { foreach (char alpha in getAlphabet()) { switch (alpha) { case 'A': //W ...

IEnumerable и порядок

У меня есть вопрос о порядке в IEnumerable (или IEnumerable<T>, не имеет значения). Как известно, перебор IEnumerable-это псевдокод, который может быть записан следующим образом: while (enumerable.HasNext()) { object obj = enumerable.Current; ... } Теперь предположим, что нужно оперировать сотсортированной коллекцией. Можно ли в этом случае использовать IEnumerable или лучше попробовать другие средства (например, IList) с поддержкой индексации? Другими словами: дает ли кон ...

IEnumerable vs List-что использовать? Как они работают?

у меня есть некоторые сомнения по поводу того, как работают счетчики, и LINQ. Рассмотрим эти два простых выбора: List<Animal> sel = (from animal in Animals join race in Species on animal.SpeciesKey equals race.SpeciesKey select animal).Distinct().ToList(); или IEnumerable<Animal> sel = (from animal in Animals join race in Species on animal.SpeciesKey equals race.Spe ...

Передача одного элемента в качестве IEnumerable

есть ли простой способ передать один элемент типа T к методу, который ожидает ...

Может ли кто-нибудь объяснить мне IEnumerable и IEnumerator?

может ли кто-нибудь объяснить мне IEnumerable и IEnumerator? например, когда использовать его над foreach? в чем разница между IEnumerable и IEnumerator? Почему мы должны использовать его? ...

В чем разница между IQueryable и IEnumerable

Я понимаю разницу. Будучи довольно новым для .Net, я знаю, что могу запросить IEnumerables использование расширений Linq. Так что же это IQueryable а чем это отличается? Смотрите также, в чем разница между IQueryable[T] и IEnumerable[T]? это совпадает с этим вопросом. ...

Как проверить, является ли IEnumerable нулевым или пустым?

Я люблю string.IsNullOrEmpty метод. Я хотел бы иметь что-то, что позволит такую же функциональность для IEnumerable. Есть ли такие? Может быть, какой-то вспомогательный класс коллекции? Причина, по которой я спрашиваю, заключается в том, что в if операторы код выглядит загроможденным, если скороговорка (mylist != null && mylist.Any()). Было бы намного чище иметь Foo.IsAny(myList). этот пост не дает такого ответа:IEnumerable пуст?. ...

Свободное преобразование между списком и IEnumerable

как я могу преобразовать List<MyObject> до IEnumerable<MyObject> а потом обратно? Я хочу сделать это для того, чтобы запустить ряд операторов LINQ в списке, например.Sort() ...

Какова цель AsQueryable()?

цель AsQueryable() просто так вы можете пройти вокруг IEnumerable к методам, которые могут ожидать IQueryable, или есть полезная причина для представления IEnumerable как IQueryable? Например, это должно быть для таких случаев: IEnumerable<Order> orders = orderRepo.GetAll(); // I don't want to create another method that works on IEnumerable, // so I convert it here. CountOrders(orders.AsQueryable()); public static int CountOrders(IQueryable<Order> ordersQuery) { return ordersQ ...

Как сортировать интерфейс IEnumerable

Как я могу отсортировать IEnumerable<string> в алфавитном порядке. Это возможно? Edit: как бы я написал решение на месте? ...

Работает ли LINQ с IEnumerable?

у меня есть класс, который реализует IEnumerable, но не реализует IEnumerable<T>. Я не могу изменить этот класс, и я не могу использовать другой класс вместо него. Как я понял из MSDN LINQ можно использовать, если класс реализует IEnumerable<T>. Я пробовал использовать instance.ToQueryable(), но он по-прежнему не включает методы LINQ. Я точно знаю, что этот класс может содержать экземпляры только одного типа, поэтому класс может реализовать IEnumerable<T>, но это просто не так. ...

Преобразование из списка в формат IEnumerable

IEnumerable<Book> _Book_IE List<Book> _Book_List как я должен сделать, чтобы преобразовать _Book_List на ? ...

Зачем использовать.AsEnumerable () вместо приведения к IEnumerable?

один из методов расширения на IEnumerable<T> и .AsEnumerable(). Этот метод преобразует перечисляемый объект, на который он был вызван, в экземпляр IEnumerable<T>. Однако, поскольку объект должен реализовать IEnumerable<T> чтобы применить к этому методу расширения, преобразование в IEnumerable<T> Это простой вопрос приведения к IEnumerable<T>. Мой вопрос в том, почему этот метод Вообще существует? пример: List<string> strings = new List<string>() { "tes ...

Как перебрать коллекцию, которая поддерживает IEnumerable?

Как перебрать коллекцию, которая поддерживает IEnumerable? ...

Как организовать цикл через IEnumerable пачками

Я разрабатываю программу на c#, которая имеет "IEnumerable пользователей", который хранит идентификаторы 4 миллионов пользователей. Мне нужно перебрать ienummerable и извлечь пакет 1000 идентификаторов каждый раз, чтобы выполнить некоторые операции в другом методе. Как я могу извлечь 1000 идентификаторов одновременно с начала Ienumerable ...сделать что-то еще, а затем получить следующую партию 1000 и так далее ? это возможно? ...

Есть ли" пустой список " синглтон в C#?

в C# я использую LINQ и IEnumerable хороший бит. И все хорошо (или, по крайней мере, в основном так). однако во многих случаях я обнаруживаю, что мне нужен пустой IEnumerable<X> по умолчанию. То есть, я бы хотел for (var x in xs) { ... } для работы без использования null-проверка. Теперь это то, что я сейчас делаю, в зависимости от более широкого контекста: var xs = f() ?? new X[0]; // when xs is assigned, sometimes for (var x in xs ?? new X[0]) { ... } // inline, someti ...

Преобразование IEnumerable в DataTable

есть ли хороший способ преобразовать IEnumerable в DataTable? Я мог бы использовать отражение, чтобы получить свойства и значения, но это кажется немного неэффективным, есть ли что-то строить-в? (Я знаю примеры, такие как: ObtainDataTableFromIEnumerable) EDIT: Этот вопрос уведомил меня о проблеме обработки нулевых значений. Код, который я написал ниже, обрабатывает нулевые значения правильно. public static DataTable ToDataTable<T>(this IEnumerable<T> items) { // Create the ...