gpt4 book ai didi

C# 创建指示属性调用后运行代码的属性

转载 作者:太空狗 更新时间:2023-10-29 21:20:39 25 4
gpt4 key购买 nike

我想创建一个属性来放置属性。

将包含此属性的属性将在设置新值后执行另一个方法。

例如:

    [MethodExecute(Log)]
[MethodExecute(Save)]
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}

这里我想激活两种方法,一种记录更改,另一种保存它。

谢谢, 罗尼

最佳答案

我相信你可以在 PostSharp 中做到这一点.不幸的是,您需要将方法名称指定为字符串 - C# 中没有将方法名称解析为 MethodInfo 的运算符,尽管它已被多次提出。

如果您需要代码在 setter(而不是 getter)之后执行,您可能需要移动属性:

public string Name
{
get;
[MethodExecute("Log")] [MethodExecute("Save")] set;
}

(为简单起见,这使用自动实现的属性。)

关于C# 创建指示属性调用后运行代码的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1431363/

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