user1527762
user1527762

Reputation: 957

Linq to Sql SelectMany

I am trying to understand the to Sql SelectMany. I want to use it in the query below to see how the results are generated using SelectMany as against Select. I know I can just use a select here instead...I have a table users with Id as int and location as a string. When I run the query below I get the exception "Sequence Operators not supported for type System.String". Can you please tell me how do I iterate the results that are returned by SelectMany and print the results to console.

UsersDataContext db = new UsersDataContext();

var results = db.Users.Where(u=> u.ID == 5 || u.ID == 6).SelectMany(u => u.Location);

foreach (var c in results)
{
    Console.WriteLine(c);
} 

Upvotes: 2

Views: 1202

Answers (1)

undefined
undefined

Reputation: 34238

You should use .Select here.

From MSDN on SelectMany:

Projects each element of a sequence to an IEnumerable and flattens the resulting sequences into one sequence.

Basically SelectMany works on taking a lambda pointing to a collection and then flattening it into a single resultset. Location in your example isnt a collection

Upvotes: 2

Related Questions