将运行时生成的类型(通过 TypeBuilder)传递给 GenericClass
我想将运行时生成的类型(通过 TypeBuilder)传递给泛型类中的泛型方法。我无法将其作为对象传递,因为反射用于查找各种属性。 据我了解,这是无法完…
有关 InvalidProgramException 的帮助(无效的 IL 代码?)
我在使用 System.Reflection.Emit 单声道导出的程序集中遇到了一个奇怪的错误。 当尝试运行我的程序集时,我收到一个 InvalidProgramException:无效…
有没有办法避免 FieldAccessException?
我们有一个类库,它执行一些类似于 ORM 的基本操作,基本上我们可以执行以下操作: conn.Query("select * from table"); 并返回一个 List。由于从列名…
InternalsVisibleTo 用于动态生成程序集,但具有强命名
我有一个使用动态代码生成来创建代理类的项目。该代理类利用项目的内部类(以便不暴露实现细节),因此我将InternalsVisibleTo 与动态生成的程序集的…
TypeBuilder 上的 TypeBuilder.GetMethod
TypeBuilder.GetMethod 允许您获取由 TypeBuilder 关闭的泛型类型的方法,因此它可以让我执行以下操作: TypeBuilder tb = .... // this would throw …
检查 Type 是否为 TypeBuilder
如何检查 Type 对象是否是 TypeBuilderInstantiation? 基本上,我需要一种类型之外的方法。 如果它是 TypeBuilderInstantiation,我需要调用 TypeBui…
带有 DataContract 和 DataMembers 的 TypeBuilder
我正在使用 DataContract 属性和 DataMembers 动态生成动态类型。我已经使用生成类型的反射验证了通过 DataContract 和 DataMember 属性正确生成了类…
创建 DynamicMethod 来为属性赋值?
这是一个学习练习。我创建了一个方法,它接受 Foo 和一个字符串并设置 A 属性。我使用 Reflector 反汇编来发出以下代码。反汇编看起来像这样: .metho…
动态类型创建中的 MethodBuilder.CreateMethodBody() 问题
对于实验,我尝试从源类型读取方法主体(使用 GetILasByteArray())并将其添加到新类型(使用 CreateMethodBody())。 我的源类就是这样 为该 public …
如何在 ConstructorBuilder 中定义局部变量?
我想为运行时构建的对象创建一个构造函数,该构造函数调用一个方法,该方法采用传递给构造函数的所有参数的对象数组。看看如何构建这样的方法,看来我…
Unity 无法解析动态创建的类的实例
解决方案 我没有在新类型上指定构造函数参数,因此 .NET 假定了基类的类型,但它也没有将它们命名为相同的名称,因此当 Unity 尝试 Parameter[x].Name…
何时以及如何使用 Ldvirtftn 操作码?
下面的示例程序是我试图掌握 ldvirtftn 操作码的用法。 您会看到名称表明这是将虚拟函数指针加载到堆栈时使用的操作码。在示例代码中,我创建了一个具…
如何从 C# 编写汇编代码?
我想用 C# 编写一串汇编代码,并将其发送到一些 win32 api 来编译和执行它并获取结果。 示例: string str = "MOV 1,2;XOR EBP,EBP"... 听起来很难做…