可能重复:
通过属性的 C# 包装方法
我想实现这样的功能:
[Wrap]
public void Foo()
{
/* foo logic */
}
其中[Wrap]
attribute是一个属性,它将函数逻辑包装在一些外部代码中——例如让它成为一个事务范围:
using(var scope = new TransactionScope())
{
/* foo logic */
scope.Complete();
}
这样的属性怎么写?