【发布时间】:2016-12-28 14:43:15
【问题描述】:
我正在(维护)一个充当数据访问层的 dll 程序集,有许多方法需要事务处理,许多其他方法不需要,它是当前的“功能”dll,没有任何事务处理方法,我需要添加它,所以我正在寻找一种简单的方法来添加事务处理程序。
我想知道是否可以使用 AOP 来创建一个装饰器,我可以将它添加到需要事务的方法中。
我想要这样的东西:
[Transaction]
void MyDbMethod()
{
//DoSomething
myContext.SaveChanges();
}
对于我使用 Code First 的 EF 模型定义,当前项目使用 Unity 框架执行其他一些 DI 任务,该框架可以用于此吗?
【问题讨论】:
-
可能看看这个stackoverflow.com/questions/13211261/…然后你可以检查
System.Transactions.Transaction.Current != null并决定是否继续。
标签: c# entity-framework unity-container aop