经常有这种情况,写了个功能,发现无故短时间内被多调用。但是业务逻辑应该是单位时间内只允许最多 N次调用。
通常我们就会写上次和这次调用 时间比较 如果太短直接return.
但是这不是解决的根本。因此我想知道到底是谁调用了我?
这个需求一直好早就有,但感觉没有这种好的简单的实现方式。
今天偶然WPF看到了一个属性更改的通知这里
public bool IsPlaying { get => _IsPlaying; set { _IsPlaying = value; RaisePropertyChanged(); } }
RaisePropertyChanged()通知这个改变,咦?无参的?多个属性不同的属性改变都使用这个,那他怎么通知具体是哪个属性改变了?标签:CallerMemberName,调用,通知,RaisePropertyChanged,IsPlaying,属性 From: https://www.cnblogs.com/stweily/p/17637419.html
是不是就是调用他的地方 这个他自动获取的?
果然 [CallerMemberName] 这个特性。。。查下相关的还有
CallerFilePath CallerLineNumber 所以。。这里是不是可以类似搞出些调试模式下想看到的内容呢,
先就记录在这。后续有时间再细研究配合作用。