我正在使用Microsoft fakes来测试使用第三方程序集的代码库。 我们的代码调用一个具有几个非泛型重载的类的静态泛型方法。 像这样:
ILookupResult Serivce.Lookup<T>(int code);
ILookupResult Service.Lookup(Type type,int code);
问题是生成的填充程序为每个非泛型方法都有一个条目,如下所示:
ShimService.LookupTypeInt32
但是没有通用方法的恩赐,我也不知道为什么会这样。
更新1:值得一提的是:
更新2 :现在我知道通过将Fake节点的Diagnostic属性设置为true来解决问题。它说&#34;不支持的约束类型&#34;这使我更好地了解界面,我注意到T应该是struct:
ILookupResult Serivce.Lookup<T>(int code) where T:struct;
现在问题是为什么在垫片生成中不支持struct?