Описание тега yield-return

NoneYield return is a C# construct that's used to create an iterator block, which makes implementing IEnumerable<t> easier. </t>
1 ответ

Неправильная реализация компилятором блоков итераторов?

Рассмотрим документацию для IEnumerator.Current: Current также генерирует исключение, если последний вызов MoveNext вернул false, что указывает на конец коллекции Однако этого не происходит с блоками итераторов. Например: void Main() { using (var en…
28 окт '13 в 19:33
2 ответа

Задержка Unity3d в то время как истинный цикл не работает

Я все еще работаю над игрой, и я столкнулся с другой проблемой, я пытаюсь сделать бесконечный цикл, который ждет пару секунд при каждом выполнении, в настоящее время у меня есть: StartScript.cs using UnityEngine; using System.Collections; using Prog…
1 ответ

Уступка с IDisposable ресурсом

Есть ли правильный способ заработать через одноразовый ресурс? Возвращаемые объекты могут быть IDisposable, но элемент, через который они проходят, is. Вот пример: public static IEnumerable&lt;T&gt; Fetch(IEnumerable&lt;Guid&gt; ids) { using (var cl…
22 ноя '12 в 01:23
0 ответов

Java итерирует огромную таблицу базы данных

У меня есть программа на C#, которая повторяет очень большой запрос к базе данных, используя возвращение доходности. Затем вызывающий метод работает с каждым объектом, вызывая IEnumerable в параллельном. Для каждого. В Java нет возврата, все реализа…
23 янв '13 в 20:20
0 ответов

Как смоделировать Directory.EnumerateFiles в VS2008 vb.net

Мне было поручено создать версию Directory.EnumerateFiles для VB.NET в 2008 году. Мне удалось сделать это для VS2008 в C#: public IEnumerable&lt;string&gt; GetFileList(string fileSearchPattern, string rootFolderPath) { Queue&lt;string&gt; pending = …
13 янв '16 в 13:14
3 ответа

Можно ли использовать "yield" для генерации "Итератора" вместо списка в Scala?

Можно ли использовать yield в качестве итератора без оценки каждого значения? Это обычная задача, когда легко реализовать сложную генерацию списка, а затем вам нужно преобразовать его в Iteratorпотому что вам не нужны некоторые результаты...
24 дек '10 в 09:34
1 ответ

Сравнение производительности IEnumerable и повышение события для каждого элемента в источнике?

Я хочу прочитать большой двоичный файл, содержащий миллионы записей, и я хочу получить некоторые отчеты для записей. я использую BinaryReader читать (что, я думаю, имеет лучшую производительность в читателях) и преобразовывать прочитанные байты в мо…
05 ноя '13 в 10:01
3 ответа

yield return при добавлении значений в конец существующего IEnumerable

Я только что узнал о yield returnЯ, кажется, очень мило. Я использую его в таком методе: public IEnumerable&lt;ValidationResult&gt; Validate(ValidationContext vc) { if (Name == "Arbitary") yield return new ValidationResult("Bad Name.", new[] { "Name…
11 апр '12 в 11:47
0 ответов

Unity Coroutine Yields, но также продолжает обновлять переменные

Я ищу эту сопрограмму для обновления переменной каждую секунду: int i = 0; void Start() { StartCoroutine ("MyCoRoutine"); } IEnumerator MyCoRoutine() { while ( true ) { print ("Counter Value: " + i++); yield return new WaitForSeconds(1f); } } Я ожид…
14 дек '14 в 03:56
0 ответов

Почему я не могу использовать yield return для лямбда-выражений

Возможный дубликат: Почему в C# анонимный метод не может содержать оператор yield? У меня есть этот код: Func&lt;IEnumerable&lt;int&gt;&gt; allNumbers = ()=&gt; new []{1,2,3}; foreach (var number in allNumbers()) Console.WriteLine(number); Но я хоте…
21 сен '12 в 16:42
3 ответа

C#: Создание перечислений в стиле Java с наследованием

Я ищу построить шаблон перечисления в стиле Java для C#, который также поддерживает наследование. У меня проблемы с доходностью. В частности, возвращая значения BaseEnum из свойства Values ​​ChildEnum. public class BaseEnum { public static readonly …
09 сен '11 в 03:15
2 ответа

IEnumerable с возвратом урожая и сбоем VS Quickwatch

У меня есть следующий метод, который возвращает IEnumerable public IEnumerable&lt;ExternalFilter&gt; GetExternalFilters() { if (externalfilters == null) yield break; foreach (ExternalFilter filter in externalfilters) yield return filter; } Если я см…
1 ответ

Более компактный способ "возврата прибыли"?

У меня есть этот метод, который дает значения, полученные 2 методами: private IEnumerable&lt;Node&gt; ParseEmptyElement() { foreach (var node in ParseMembersOfObject()) { yield return node; } foreach (var node in ParseNestedProperty()) { yield retur…
22 апр '15 в 22:23
2 ответа

Самый простой способ избавиться от "yield" в (путем преобразования в конечный автомат) метод рекурсивного генератора?

У меня есть хороший, элегантный (IMO) фрагмент кода, который я написал и хочу портировать на другие языки, такие как C++, Java и т. Д. Проблема, с которой я сталкиваюсь, имеет две стороны: Код использует yield Код очень рекурсивный Избавиться от yie…
22 окт '12 в 09:21
1 ответ

Доходность и возврат

Я часто ловлю себя на том, что пишу. как это: if (condition) { yield return whatever; yield break; } Я нахожу довольно многословным использование двух операторов yield для стандартной парадигмы "возвращаем одно значение и метод выхода". Я знаю, я мо…
19 дек '10 в 20:54
3 ответа

Код после возврата доходности выполнен

Рассмотрим следующий пример: class YieldTest { static void Main(string[] args) { var res = Create(new string[] { "1 12 123", "1234", "12345" }); } static IEnumerable&lt;int&gt; Create(IEnumerable&lt;string&gt; strings) { foreach(string s in strings)…
27 фев '14 в 09:26
17 ответов

Правильное использование "доходности"

Ключевое слово yield - это одно из тех ключевых слов в C#, которое продолжает меня удивлять, и я никогда не был уверен, что использую его правильно. Из следующих двух частей кода, который является предпочтительным и почему? Версия 1: Использование в…
03 янв '09 в 22:43
1 ответ

Применить селекторы на пары элементов возможно бесконечных последовательностей C#

Я должен реализовать метод расширения public static IEnumerable&lt;TResult&gt; MyMerge&lt;T1, T2, TResult&gt;(this IEnumerable&lt;T1&gt; s1, IEnumerable&lt;T2&gt; s2, Func&lt;T1, T2, TResult&gt; f) который возвращает последовательность f(x1,y1),f(x2…
22 янв '15 в 19:38
5 ответов

Временно приостановить метод до следующего вызова

Можно ли создать метод, который может временно приостановить себя, "вернувшись", а затем возобновив его при повторном вызове? Он должен действовать так, как если бы он никогда не возвращался (т.е. сохранить все свои переменные, продолжить выполнение…
31 янв '14 в 06:00
0 ответов

Могу ли я использовать "yield return" для метода mvc, если да, то как мне получить данные в запросе ajax?

Я не могу найти какую-либо информацию / вопрос по этой проблеме, у меня есть контроллер с методом, который возвращает доходность, я использую ajax для выполнения запроса, но все, что я получаю, это текст, позвольте мне показать вам. [HttpPost] publi…
08 ноя '17 в 20:58