2010-06-09 92 views
0

我已经到达了我的Linq绳索的末端。需要你的帮助!Linq to Sql投影帮助

继承人我的表结构第一(所有的LINQ to SQL对象):

InventoryItems 
    -ID 
    -AmtInStock 

IventoryKits 
    -ID 

InventoryKits_to_InventoryItems 
    -InventoryItemID 
    -InventoryKitID 

,所以我需要做的投影像下面

var q2=from k in GetAllKits()//returns IQueryable<InventoryKit> 
        select new VMPublication()//ViewModel Object 
        { 
         ID = k.ID, 
         Name = k.Name, 
         WebAmountInStock = ,//need to get the Min() AmtInStock from InventoryItems here 
         ItemCode = k.ItemCode, 
         WebAmountOrdered = k.AmtOrdered.ToString(), 
         WebReminderAmount = "", 
         WebAmountWarning="", 
         Type = "Kit" 
        }; 

我不知道如何获取民()在该查询中的InventoryItem的AmtInStock。

请帮忙!非常感激!

回答

0

我猜你的公会的名字,但你可以试试:

var q2=from k in GetAllKits()//returns IQueryable<InventoryKit> 
       select new VMPublication()//ViewModel Object 
       { 
        ID = k.ID, 
        Name = k.Name, 
        WebAmountInStock = (from i in k.InventoryKits_to_InventoryItems 
             select i.InventoryItem.AmtInStock).Min(), 
        ItemCode = k.ItemCode, 
        WebAmountOrdered = k.AmtOrdered.ToString(), 
        WebReminderAmount = "", 
        WebAmountWarning="", 
        Type = "Kit" 
       }; 
+0

我得到信息:System.InvalidOperationException:无法翻译表达“表(REIP_InventoryKit)。凡(K => k.Active) .Select(k => new VMPublication(){ID = k.ID,Name = k.Name,WebAmountInStock = k.REIP_XREF_InventoryKits_to_InventoryItems.Select(i => i.REIP_InventoryItem.AmtInStock).Min()。ToString(),ItemCode = k.ItemCode,WebAmountOrdered = k.AmtOrdered.ToString(),WebReminderAmount =“”,WebAmountWarning =“”,Type =“Kit”})'到SQL中,并不能将其视为本地表达式。 – Micah 2010-06-09 19:59:19

+0

这不是正确的答案,现在我不得不重构来解决我的工会问题。谢谢! – Micah 2010-06-09 20:08:11