类型构建器的通用类型参数

时间:2014-09-18 22:01:05

标签: c# c#-4.0 c#-3.0 typebuilder

基本上我有这个班级

public class MyBase<TEntity> where TEntity : class
{
  //Some retrieval stuff
}

我需要这样做

public class MyEntity : MyBase<MyModel>
{
  //More Stuff
}

但使用TypeBuilder

public TypeBuilder CreateTypeBuilder(Type GenericTypeParameter)
{
  Type MyGenericTypedBase = ????;
  TypeBuilder type = module.DefineType("MyClassName", TypeAttributes.Public, MyGenericTypedBase);
  ...
  return type;
}

提前致谢

对不起,问题是如果使用类型构建器

生成泛型类型参数,如何获取应该继承的类型

1 个答案:

答案 0 :(得分:0)

我刚发现答案应该是

Type MyGenericTypedBase = typeof(MyBase<>);
MyGenericTypedBase = MyGenericTypedBase.MakeGenericType(GenericTypeParameter);

谢谢大家的答案