首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Linq-to-SQL类上捕获Save或Load事件?

如何在Linq-to-SQL类上捕获Save或Load事件?
EN

Stack Overflow用户
提问于 2009-04-30 09:57:22
回答 2查看 868关注 0票数 5

我有一个Linq- to -SQL类,我想在将记录持久化到DB之前执行一些预保存验证。此外,一旦它被保存,我希望有一些保存后的处理代码。

同样,当一条记录被删除时,我希望有前方法和后方法被调用,不管context.SubmitChanges()是从哪里调用的。

我在生成的代码中看不到任何可以覆盖的方法。对于预处理来说,部分方法OnValidate()可能就足够了,但是我希望能够在不满足某些条件的情况下取消保存,并且我根本看不到任何用于后期处理的挂钩。

我是不是遗漏了什么?或者你能推荐另一种达到预期效果的方法吗?

谢谢!

EN

Stack Overflow用户

发布于 2009-04-30 10:00:12

抛出异常将有效地取消更改...不过,可能有点苛刻。

另一个扩展点是覆盖数据上下文上的SubmitChanges,以获取挂起的更改(GetChangeSet),执行任何最终更改(可能是审计),然后调用base.SubmitChanges。您可以将任何保存后操作放在此之后(使用保存之前获得的更改集)。

票数 4
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/806202

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档