views:

31

answers:

1

How can I retrieve Tuples at Select using EF4?

        var productCount = (from product in context.products
                    select new Tuple<Product, int>(product, products.Orders.Count));

Or

        var productCount = (from product in context.products
                    select Tuple.Create(product, products.Orders.Count));

Entity framework says that cant use not empty constructor for first case, and not recognize Tuple.Create method for second.

+1  A: 

How about switching to LINQ-to-Objects for the projection:

var productCount = from product in context.products
                select new {Product = product, Count = products.Orders.Count };
var final = from item in productCount.AsEnumerable()
            select Tuple.Create(item.Product, item.Count);
Marc Gravell
That will be the only option: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=520269
Craig Stuntz
Not a bag guess, then, considering ;-p I've upvoted the "connect" item.
Marc Gravell
I doing this. But dont exists a better choice?
Fujiy
@Fujiy - I don't think so.
Marc Gravell
There's nothing really wrong with this as Marc wrote it.
Craig Stuntz