gpt4 book ai didi

.net - 使用 Entity Framework 4 删除对象的最简单方法

转载 作者:行者123 更新时间:2023-12-04 17:36:33 24 4
gpt4 key购买 nike

确认!我是 Entity Framework 的新手,正在尝试找到删除项目的最简单方法。

我有一个列表框,其中数据源设置为数据库中的 TagCategory 对象。这工作正常。现在我想删除所选项目。所以我做这样的事情:

TagCategory category = (TagCategory)lstCategories.SelectedItem;
using (MyEntities context = new MyEntities())
{
context.AttachTo("TagCategories", category);
context.DeleteObject(category);
context.SaveChanges();
}

这似乎很直接,但它不起作用。没有删除任何内容,没有错误消息,什么都没有。

所以我看到我可以做这样的事情:
using (MyEntities context = new MyEntities())
{
string cmd = String.Format("DELETE FROM TagCategory WHERE TagCatID=@ID",
category.TagCatID));
context.ExecuteStoreCommand(qry);
}

这似乎有效。那么我是选择有效的方法,还是 Entity Framework 4 实际上能够做到这一点?

编辑:没关系。事实上,我还有另一个问题阻止了代码表单的执行。我发布的两个片段似乎都可以正常工作。我很抱歉。

最佳答案

您可以使用 stub 实体,如下所示:

using (var context = new MyEntities())
{
var tagCategory = new TagCategory
{
PostId = category.TagCatID
};
context.TagCategories.Attach(tagCategory);
context.DeleteObject(tagCategory);
context.SaveChanges();
}

关于.net - 使用 Entity Framework 4 删除对象的最简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4787652/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com