在我当前的项目中,我一直在使用MediatR并取得了很大的成功。使用中介管道来解决横切关注点的想法非常好。
我没有得到的一件事(也许原因是我缺乏对 c# covariance/contravariance的了解)是如何在单个处理程序中处理所有传入请求?无论请求的类型如何,我都想在执行请求之前执行一个操作:
IRequest
或者
IRequest<Foo>
我得到了 Jimmy 关于 PreRequestHandler 的说法,但是我无法为所有请求实现一个单独的请求,因为它们总是被键入(我可以为我拥有的每个 IRequest 实现一个 IPreRequest,但这听起来不对)...... .
请问有什么想法吗?