CodeDom泛型类型约束

Fio*_*onn 12 c# generics codedom

有没有办法用CodeDom生成类约束.

因为当我使用类似的东西

var method = new CodeMemberMethod();
var genericParam = new CodeTypeParameter("InterfaceType");
genericParam.Constraints.Add("class");
method.TypeParameters.Add(genericParam);
Run Code Online (Sandbox Code Playgroud)

生成的代码就像

private InterfaceType GetImpl<InterfaceType>()
    where InterfaceType : @class
{
}
Run Code Online (Sandbox Code Playgroud)

我发现最好的解决方法是在课前使用前导空格

genericParam.Constraints.Add(" class");
Run Code Online (Sandbox Code Playgroud)

但这似乎充其量只是一种解决方法.

Max*_*kin 7

似乎没有直接的方法来指定该约束.对于"struct"约束都没有.

对于"T:new()"约束,请使用该标志 HasConstructorConstraint

对于其余部分,请使用此msdn示例中的 CodeTypeReference .