Stack Over
Stack Over

Reputation: 635

How can I get conditional data with LINQ

I have a list which is called stacOverflows which includes 1 item such as IsOk, Number.

StackOverflows

[0]   -- IsOk = false;
[0]   -- Number = 5768;
[1]   -- IsOk = true;
[1]   -- Number = 4348;

How can I get number value (if there is any IsOk = true) where IsOk = true with LINQ?

Should I use any?

Upvotes: 1

Views: 93

Answers (2)

sloth
sloth

Reputation: 101122

If you expect exact one item, use Single:

var item = collection.Single(i => i.IsOk).Number;

Otherwise, use Where/Select

var items = collection.Where(i => i.IsOk).Select(i => i.Number);

Upvotes: 2

0lukasz0
0lukasz0

Reputation: 3267

yourcollection.Where(i => i.IsOk).Select(i => i.Number).ToList()

Upvotes: 4

Related Questions