检查方法是否由 Castle DynamicProxy 自动实现的最简单方法

发布于 2024-10-05 14:42:55 字数 250 浏览 0 评论 0原文

我正在寻找最简单的方法来检查我的代理上的方法是否已由 DynamicProxy 自动实现。也就是说,假设在注册我的组件时,我添加了一些AdditionalInterfaces,并且在我的拦截器中,我只想拦截该方法(如果该接口是在代理上自动实现的),并且如果我调用 .Proceed() 将简单地抛出 NotImplementedException 。我可以想出一些粗略的方法来使用 ComponentModel 来检查这一点,但我希望可能有一些简单/直接的方法。

谢谢!

I'm looking for the easiest way to check if a method on my proxy has been auto-implemented by DynamicProxy. That is, let's say when registering my component, I added some AdditionalInterfaces, and in my interceptor, I only want to intercept the method if that interface was auto-implemented on the proxy and will simply throw a NotImplementedException if I call .Proceed(). I can think of some crude ways to check this using the ComponentModel, but I was hoping there might be something easy/straightforward.

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

舟遥客 2024-10-12 14:42:55

使用IProxyGenerationHook仅代理您想要拦截的方法。

Use IProxyGenerationHook to only proxy the methods you want to intercept.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文