Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linq到Sql投影帮助_Linq_Linq To Sql_Projection - Fatal编程技术网

Linq到Sql投影帮助

Linq到Sql投影帮助,linq,linq-to-sql,projection,Linq,Linq To Sql,Projection,我已经到了极限。需要你的帮助 以下是我的表结构(所有linq到sql对象): 所以我需要做一个如下的投影 var q2=from k in GetAllKits()//returns IQueryable<InventoryKit> select new VMPublication()//ViewModel Object { ID = k.ID,

我已经到了极限。需要你的帮助

以下是我的表结构(所有linq到sql对象):

所以我需要做一个如下的投影

 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"
                   };
var q2=来自GetAllKits()中的k//返回IQueryable
选择新建VMPublication()//ViewModel对象
{
ID=k.ID,
Name=k.Name,
webamountinstack=,//需要从此处的InventoryItems获取Min()AmtInStock
ItemCode=k.ItemCode,
WebAmountOrdered=k.amTorOrdered.ToString(),
WebEmleramount=“”,
WebAmountWarning=“”,
Type=“套件”
};
我不知道如何在该查询中获取InventoryItem的AmtInStock的Min()


请帮忙!非常感谢

我猜的是您的协会名称,但请尝试以下方法:

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"
               };
var q2=来自GetAllKits()中的k//返回IQueryable
选择新建VMPublication()//ViewModel对象
{
ID=k.ID,
Name=k.Name,
webamountinstack=(从k.InventoryKits中的i到InventoryItems
选择i.InventoryItem.AmtInStock).Min(),
ItemCode=k.ItemCode,
WebAmountOrdered=k.amTorOrdered.ToString(),
WebEmleramount=“”,
WebAmountWarning=“”,
Type=“套件”
};

I get:System.invalidooperation异常:无法将expression'表(REIP_InventoryKit).其中(k=>k.Active).选择(k=>new-VMPublication(){ID=k.ID,Name=k.Name,WebAmountInStock=k.REIP_-XREF_-InventoryKit_到_-InventoryItems.选择(I=>I.REIP_InventoryItem.AmtInStock).Min().ToString(),ItemCode=k.ItemCode,WebAmountOrdered=k.AmtOrdered.ToString(),webrementeramount=“”,WebAmountWarning=“”,Type=“Kit”})转换为SQL,无法将其视为本地表达式。不,这是正确的答案,现在我必须重构以修复我的联合问题。谢谢!
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"
               };