2010-06-09 87 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