我在哪里可以找到RemotingServices.CreateTransparentProxy实现

本文关键字:RemotingServices CreateTransparentProxy 实现 在哪里 | 更新日期: 2023-09-27 17:51:00

我试图通过挖掘源代码来了解WCF ChannelFactory创建的透明代理是如何工作的。CreateTransparentProxy由extern关键字和[MethodImplAttribute(MethodImplOptions.InternalCall)]属性标记,这意味着我必须在CLR内查看实现,只要我的理解去。在CLR源代码中,我只发现了一个我需要在c#到c++代码中的函数映射文件ecalllist.h中提到的函数。所以实现必须躺在类称为RemotingNative,但搜索库内没有给我任何结果。

我在github上发现了一些旧的SSCLI代码,其中包含类似的方法实现,但不完全相同。除此之外,我还想看看实际的实现

我在哪里可以找到RemotingServices.CreateTransparentProxy实现

前几天WCF成为开源的。到目前为止,我发现的是WCF ServiceChannelProxy现在使用DispatchProxy.Create<T, TProxy>()而不是RemotingServices.CreateTransparentProxy() .
所以看起来如果你想实际实现创建WCF使用的代理的方法,比DispatchProxy和DispatchProxyGenerator是你寻找的地方。如果您希望实际实现RemotingServices.CreateTransparentProxy(),那么SSCLI代码可能是@Christian的一个很好的近似。

相关文章:
  • 没有找到相关文章