gpt4 book ai didi

c# - c#中的函数装饰器

转载 作者:IT老高 更新时间:2023-10-28 20:34:07 26 4
gpt4 key购买 nike

是否有 Python 的函数装饰器的 C# 类比?感觉它对属性和反射框架是可行的,但我没有看到在运行时替换函数的方法。

Python decorators通常以这种方式工作:

class decorator(obj):
def __init__(self, f):
self.f = f
def __call__(self, *args, **kwargs):
print "Before"
self.f()
print "After"

@decorator
def func1():
print "Function 1"

@decorator
def func2():
print "Function 2"

调用 func1 和 func2 会导致

BeforeFunction 1AfterBeforeFunction 2After

这个想法是装饰器可以让我在多个函数的入口和导出处轻松添加常用任务。

最佳答案

我实现这一点的方法是通过AOP frameworks喜欢 Castle Dynamic Proxy , Spring.NET甚至是 Policy Injection Application Block .

关于c# - c#中的函数装饰器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1391157/

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