删除实体框架中的行

时间:2015-12-01 22:32:24

标签: c# entity-framework

我想要创建的是当用户选择一个项目时,该项目将从项目列表中消失。有些项目可以提交一次,一旦提交,用户就无法再次提交相同的项目。提交的项目将记录到数据库中。

我遇到的问题是弄清楚我的逻辑在哪里出现问题,因为它正在破坏,我该怎么做才能改善这一点?

using (var db = new myDatabase())
        {
            var itemLists = db.GetAllItem().ToList();
            var userSubmittedItems = db.GetAllUserItem("LoginID").ToList();

            if (userSubmittedItems.Count > 0)
            {
                foreach (var submittedItems in userSubmittedItems)
                {
                    foreach (var item in itemLists)
                    {
                        int itemID = item.ItemID;
                        int userItemID = userSubmittedItems.UserItemID;

                        if (itemID == userItemID && item.OneTime == true)
                        {
                            itemLists.Remove(item);
                        }
                    }
                }
            }

1 个答案:

答案 0 :(得分:0)

您只是删除了集合itemLists中的项目,您自己没有在数据库中执行任何操作...您应该这样做,并想象您的项目实体被调用{ {1}}执行此操作:

ItemEntity

有关使用EF删除记录的更多信息:Delete a single record from Entity Framework?