Просто используйте FirstOrDefault
.
Вы также можете сэкономить много времени, поскольку Split
уже возвращает массив (IEnumerable
).Таким образом, вам не нужно создавать новый список и добавлять его
Проблема, по сути, Take
Возвращает IEnumerable
(список всех намерений и целей, который еще не был пройден)Console.WriteLine
не знает, как неявно преобразовать его в string
, поэтому записывает имя его типа
var result = rawInputData.Split(',').FirstOrDefault();
if(result == null) // checks if there are no elements and results null
Console.WriteLine("darn");
else
Console.WriteLine(result);
Дополнительные ресурсы
Метод Enumerable.FirstOrDefault
Возвращает первый элемент последовательности или значение по умолчанию, если элемент не найден.
StringМетод .Split
Возвращает строковый массив, содержащий в этом экземпляре подстроки, разделенные элементами указанной строки или массива символов Unicode.
Enumerable.Take (IEnumerable, Int32) Метод
Возвращает указанное число смежных элементов с начала последовательности.
- Возвращает
IEnumerable<TSource>
IEnumerable, который содержит указанное количество элементов из tначало последовательности ввода.
Перечислимый класс
Методы в этом классе обеспечивают реализациюстандартных операторов запросов для запросов к источникам данных, которые реализуют IEnumerable.Стандартные операторы запросов - это методы общего назначения, которые следуют шаблону LINQ и позволяют выражать операции обхода, фильтрации и проецирования данных на любом языке программирования на основе .NET.
Большинствоиз методов в этом классе определены как методы расширения, которые расширяют IEnumerable.Это означает, что они могут быть вызваны как метод экземпляра для любого объекта, который реализует IEnumerable.
Методы, которые используются в запросе, возвращающем последовательность значений, не используют целевые данные до тех пор, покаОбъект запроса перечислен.Это известно как отложенное выполнение.Методы, используемые в запросе, который возвращает одноэлементное значение, выполняются и немедленно используют целевые данные.
Обновление
Как примечание, результат никогда не может быть нулевым здесь.- Антонин Лейсек
Что действительно верно
string.Split
Вернет хотя бы 1 элемент