【发布时间】:2020-06-25 02:15:09
【问题描述】:
目标:我有一个显示表 (ICS_Transactions) 中所有打开记录的索引视图。目前它显示所有记录。我正在尝试快速过滤掉辅助表(ICS_Orders)中不匹配的任何记录。无需显示任何没有关联订单的记录。
我几乎可以正常工作(我认为)。我相信我的问题是这个区域
var MyReqs = q.FirstOrDefault().RequsitionNumber;
foreach 有效,只是它每次只抓取第一个记录的申请号。我明白为什么(FirstorDefault)。但是,我不知道用什么来代替它——以便每次都循环播放。我尝试简单地删除 (.FirstOrDefault()) 但该语法不正确。
这是完整的索引控制器代码
List<ICS_Transactions> newqList = new List<ICS_Transactions>();
var q = db.ICS_Transactions.Where(s => s.OpenClosed == "Open");
q = q.Where(s => s.TransType == "New Internal Order");
var MyReqs = q.FirstOrDefault().RequsitionNumber;
foreach (ICS_Transactions trans in q)
{
//do whtaever you need to see if this trans should be includxed
var z = db.ICS_Orders.Where(s => s.RequisitionNumber == MyReqs );
if (z == null)
{
// do nothing
else
{
newqList.Add(trans);
}
}
return View(newqList);
【问题讨论】:
标签: c# asp.net-mvc-5