Visual studio Visual Studio';s";“自动解析”;功能不支持';扩展方法不起作用-现在怎么办?

Visual studio Visual Studio';s";“自动解析”;功能不支持';扩展方法不起作用-现在怎么办?,visual-studio,namespaces,extension-methods,intellisense,Visual Studio,Namespaces,Extension Methods,Intellisense,我喜欢VisualStudio中的“解析”功能 典型场景: 键入Debug 键入 请注意,不会出现intellisense 右击 选择“解决” 选择使用System.Diagnostics或System.Diagnostics.Debug 漂亮。一直使用它 扩展方法场景: 键入var maxNumber=newint[]{1,2,3,4} 键入 请注意,intellisense提供了数组方法,但没有LINQ扩展方法 手动键入Max() 右键单击Max() 找不到解决办法 右键单击int[] 仍然

我喜欢VisualStudio中的“解析”功能

典型场景:

  • 键入
    Debug
  • 键入
  • 请注意,不会出现intellisense
  • 右击
  • 选择“解决”
  • 选择
    使用System.Diagnostics
    System.Diagnostics.Debug
  • 漂亮。一直使用它

    扩展方法场景:

  • 键入
    var maxNumber=newint[]{1,2,3,4}
  • 键入
  • 请注意,intellisense提供了数组方法,但没有LINQ扩展方法
  • 手动键入
    Max()
  • 右键单击
    Max()
  • 找不到解决办法
  • 右键单击
    int[]
  • 仍然没有找到解决办法
  • 勉强地滚动到页面顶部,然后使用System.Linq输入
    *

    *假设你已经背熟了,否则就绞尽脑汁或者试着查一查

  • 实施理念:

    如果这项功能被发明出来,一个想法是当我键入
    阅读时出现的第一个intellisense项,
    ,如果我单击该项,它将显示包含相关类的扩展方法的所有名称空间的解析列表

    几个问题:

  • 此功能是否计划在Visual Studio的未来版本中使用
  • 查找可能适用于特定类的扩展方法(以及相应的命名空间)的任何变通方法/技巧
  • 我真的很讨厌“只知道”使用什么名称空间来支持任何给定的类。我的意思是,有成千上万的人。谁知道你需要什么名称空间?没有可以作为线索的命名约定


    遗憾的是,我也使用Netbeans IDE for Java,而且“解析导入”在所有方面都能完美地工作。

    ReSharper()已经用扩展方法实现了这一点。有人知道它在VS2012上是如何工作的吗?Java甚至有扩展方法吗?就像OP所说的,它在典型的使用中工作得很好,可能就像在NetbeansIDEforJava中一样完美。Java没有扩展方法。除此之外,我还喜欢Eclipse的“组织导入”功能,导入包更快,因为它会自动导入包。除此之外,现在.NET还有许多非常好的特性。我不想对此作一个恼人的比较。。。