如何将其他数据传递给Castle拦截器?

时间:2016-08-18 10:06:24

标签: c# wcf rabbitmq castle-windsor castle-dynamicproxy

我有一个作为WCF服务公开的类。类生命周期由Castle Windsor管理,它附加了许多拦截器,如日志记录方面和权限方面。使用WCF,我可以在消息头中传递一些额外的数据,例如用户名或userSessionId。然后在服务器端,Permission拦截器可以使用 OperationContext.Current.IncomingMessageHeaders 并读取正在进行调用的用户。然后它可以允许调用继续或抛出异常。

问题是现在我想抛弃WCF并用其他东西替换它(RabbitMQ要被激活)。如何获得与WCF OperationContext.Current类似的功能,但没有WCF?或者在IInvocation中添加一些额外的数据,这样拦截器就能读取?拦截器必须像往常一样对世界其他地方透明。

0 个答案:

没有答案