2013-11-04 43 views
0

因此,现在我正在为销售模块编写产品选择工具,并且想要显示为销售选择的每个产品的库存。 我有两个表格:产品和仓库以及一个表格,它们和仓库中的产品库存之间有关系。实体框架多对多关系。仓库中的产品库存

针对此查询将沿

线的东西,但我将不得不为表的每一行做到这一点,它似乎真的inneficient。我想知道是否有更好的方法。谢谢!

谢谢!

回答

2

试试这个:

var stock = 
    from pw in dbGateway.productsXwarehouses 
    group pw.Product by pw into g 
    select new 
    { 
     Product = g.Key, 
     TotalStock = g.Sum(w => w.Stock) 
    }; 

我假设你productsXwarehouses表有int类型的Stock列。

但也许是一个更漂亮的解决方案是这样的:

var stock = 
    from product in dbGateway.Products 
    select new 
    { 
     Product = product, 
     TotalStock = product.productsXwarehouses.Sum(w => w.Stock) 
    }; 
+0

这正是我一直在寻找的形式,非常感谢! – Luis