使用Entity Framework Core更新具有特定ID的不同数据的多行。

我有以下表格。

enter image description here

我想更新 ApproveStatus 的行数 RequestId=2 其中 goodsId = 4 被拒绝,并 goodsId=1 被批准。

我的问题是如何在ASP.NET Core 2.2中使用Entity Framework Core来实现。

这是我目前所做的。

// model contain "approve" and "reject" strings and requestId which came from view
public IActionResult ApproveList(List<ApprovedGoodsByAdminAssistVM> model)  
{
    // I got the requestId from model
    var id = model.Select(s => s.RequestId).FirstOrDefault(); 

    // Filtered the two record with RequestId=2 from the table 
    var goodsList = context.RequestGoodsBrand
                           .Where(x => x.RequestId == id).ToList(); 
}

下一步该怎么做?

先谢谢你

解决方案:

如果我没有弄错的话,这些改变可以解决你的问题。

public IActionResult ApproveList(List<ApprovedGoodsByAdminAssistVM> model)   
{
   var id = model.Select(s => s.RequestId).FirstOrDefault();  
   var goodsList = context.RequestGoodsBrand
      .Where(x => x.RequestId == id).ToList();  

   var rejectedItems = goodsList.Where(x => x.GoodsId == 4).ToList();
   var approvedItems = goodsList.Where(x => x.GoodsId == 1).ToList();

   foreach (var item in rejectedItems)
       item.ApproveStatus = "rejected";

   foreach (var item in approvedItems)
       item.ApproveStatus = "approved"

   context.SaveChanges();
}

只是代替这些神奇的词(‘拒绝’,’批准’),你最好使用一个枚举。

给TA打赏
共{{data.count}}人
人已打赏
未分类

Django request.POST.get()返回None。

2022-9-12 4:46:39

未分类

Canvas.GetTop()返回NaN。

2022-9-12 4:46:41

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索