gpt4 book ai didi

entity-framework - OnDelete 也删除文件

转载 作者:行者123 更新时间:2023-12-02 20:19:53 27 4
gpt4 key购买 nike

使用 EF4.1 是否有一个函数事件可以在我的 POCO 上重写,该事件在删除时将被调用?我使用包含文件引用的数据库将图像保存在文件系统上。当我从数据库中删除时,我也想删除匹配的文件。

最佳答案

您可以重写 DbContextSaveChanges 方法。

public override int SaveChanges()
{
var deletedEntities = ChangeTracker.Entries().Where(entry => entry.State == EntityState.Deleted);

foreach (var deletedEntity in deletedEntities)
{
if (deletedEntity .Entity is MyEntity)
{
//delete the file
}
}

return base.SaveChanges();
}

您可以将文件删除和数据库更新包装在单个事务中,如下所示

using (var scope = new TransactionScope())
{
//your deletion logic

myContext.SaveChanges();

scope.Complete();
}

关于entity-framework - OnDelete 也删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7050312/

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