【问题标题】:problem removing an object from database entityframework asp.net从数据库 entityframework asp.net 中删除对象时出现问题
【发布时间】:2023-01-13 20:16:01
【问题描述】:

我有 3 个相互连接的类
阶级震动
VmShake 类,有 2 个变量,1 个是摇动对象,另一个是 int 量
具有以下列表的购物车类虚拟机震动

我先从购物车中删除它,然后从 vmshake 中删除它,最后删除 shake 本身。

当我从网站上删除它时,sql 将它从 shakes 表中删除。 但在 VMshake 表中,该行仍显示为空值。

什么会导致这个问题以及如何克服它

这是一个 SN-P:

 ShakesAndTusafim shake = DataLayer.Data.shakesAndTusafims.ToList().Find(x => x.ID == id);
           
    if (shake != null)
            {
                int tempId = shake.ID;
               

                foreach (Cart cart in DataLayer.Data.Carts)
                {
                    foreach (VMShakes vm in cart.shakes)
                    {
                        if (vm.shakes.ID == tempId)
                        {
                            cart.shakes.Remove(vm);
                            break;
                        }
                    }

                }
                foreach (VMShakes Shake in DataLayer.Data.VMShakes)
                { 
                if(Shake.Id== tempId)
                        DataLayer.Data.VMShakes.Remove(Shake);
                }


                DataLayer.Data.shakesAndTusafims.Remove(shake);

            }
            DataLayer.Data.SaveChanges();

【问题讨论】:

    标签: c# sql-server asp.net-mvc entity-framework


    【解决方案1】:

    首先,您将其从购物车中删除并且做得很好, 当您从 VmShake 中删除它时,如果您查看您的代码,就会出现此问题:

      foreach (VMShakes Shake in DataLayer.Data.VMShakes)
      { 
                   if(Shake.Id== tempId)
                        DataLayer.Data.VMShakes.Remove(Shake);
      }
    

    您不是在寻找具有要删除的 tempId 的奶昔,而是试图删除 ID 等于 tempId 的 vmShake。如果您将其更改为此,它将起作用:

      foreach (VMShakes vmShake in DataLayer.Data.VMShakes)
      { 
                if(vmShake.shake.Id== tempId)
                        DataLayer.Data.VMShakes.Remove(vmShake);
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-02
      • 2021-01-23
      • 2021-05-29
      • 2019-05-04
      • 1970-01-01
      相关资源
      最近更新 更多