c#-使用内部构造函数为抽象类创建动态代理
作者:互联网
我想为BCL中的一种类型创建动态代理,该类型是具有内部构造函数的抽象类.我一直是Castle的动态代理,但失败并显示异常,指出没有无参数构造函数(它们是-内部).
有什么办法可以通过城堡实现这一目标?是否没有其他动态代理框架能够做到这一点?这是开发的开始,因此很容易更改框架.
解决方法:
DynamicProxy无法完成您在C#中无法完成的任何工作.因此,它不能从无法构造的类型继承,包括没有DynamicProxy可访问的构造函数的类型.
如果您拥有程序集,则可以通过添加以下内容,通过AssemblyInfo.cs提供DynamicProxy访问:
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
需要注意的重要一点是字面值DynamicProxyGenAssembly2,它是由DynamicProxy创建的内存中程序集,您需要为其提供访问权限.
标签:dynamic-proxy,proxy,dynamic,castle-dynamicproxy,c 来源: https://codeday.me/bug/20191101/1983914.html