2013-09-05 4 views
-1

Является ли foreach единственным вариантом получения значений свойств объекта? (Если я храню, что в типе вара)Запрос IList с использованием LINQ

IList<SampleClass> samples = GetIList(); 
var onesample = samples.Select(p => p.Propy == "A").FirstOrDefault(); 

мне нужно сделать проходной «onesample», чтобы получить значение, используя Еогеасп или какой-либо лучше?

+3

Вы все равно не можете перебирать 'onesample' - это просто тип' bool', потому что вы выбираете последовательность 'bool', а затем берете первое значение. Это действительно не все * ясно, что вы пытаетесь достичь. (Я подозреваю, что вы имели в виду «Где», а не «Выбрать», с одной стороны.) –

+1

Что вы хотите достичь? – christiandev

+0

'Select' предназначен для проецирования,' Where' предназначен для фильтрации – zsong

ответ

1

Просто попробуйте с этим.

IList<SampleClass> samples = GetIList(); 
SampleClass onesample = samples.FirstOrDefault(p => p.Propy == "A"); 
0
IList<SampleClass> samples = GetIList(); 
var onesample = samples.Select(p => p.Propy == "A").FirstOrDefault(); 

Должно быть ..

IList<SampleClass> samples = GetIList(); 
var onesample = samples.Where(p => p.Propy == "A").FirstOrDefault(); 

Это поможет вам один экземпляр SampleClass

1

вам не нужно выбрать или где ... вы можете просто применить лямбда-экспресс на FirstOrDefault

IList<SampleClass> samples = GetIList(); 
var onesample = samples.FirstOrDefault(p => p.Propy == "A"); 
Смежные вопросы