【问题标题】:unity 3.0 shows code highlighter error "does not have type parameters" but compiles and runsunity 3.0 显示代码荧光笔错误“没有类型参数”但编译并运行
【发布时间】:2023-03-09 18:23:01
【问题描述】:

我们使用 Unity 2.0 已经有一段时间了,我们有这样的代码,它在最简单的情况下使用了 Unity。它编译并运行良好。

var container = new UnityContainer();            
container.RegisterType<IMyInterface, MyImplementation>();
var myImp = container.Resolve<IMyInterface>();
myImp.DoStuff();

最近,随着开发人员从 Nuget 中撤下 Unity,他们改为使用 3.0。相同的代码编译并运行。它在 VS2012 错误列表中没有显示任何内容,但代码高亮显示错误“方法 'X' 没有类型参数。”

我恢复到 Unity 2.0 参考,但它消失了。然后我切换回 3.0,它一直消失,直到我关闭并重新打开解决方案。现在它又回来了。

Intellisense 不会拉出任何带有此错误的 MyImplementation 方法。

【问题讨论】:

  • 你在使用 Resharper 吗?如果是这样,请尝试将其关闭并查看错误是否消失 - 可能是它缓存了一些旧数据。
  • 伟大的想法@JonSkeet。当我暂停 Resharper 时,它会立即消失,而 VS intellisense 会采用这些方法。现在来弄清楚 Resharper 是怎么回事。
  • 尝试清除缓存 - 我不记得该选项在哪里,但我认为它在设置中的某个地方......
  • 是的...在 Resharper -> 选项 -> 常规下找到了清除缓存按钮。非常感谢!

标签: c# visual-studio-2012 resharper unity-container intellisense


【解决方案1】:

上面 cmets 中 @JonSkeet 的道具。问题出在 Resharper 上,清除缓存解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-20
    • 2019-06-17
    • 2023-03-28
    相关资源
    最近更新 更多