在Visual Studio 2010 Ultimate的上下文菜单中找不到“resolve”

时间:2012-11-06 15:53:12

标签: c# visual-studio-2010

在主题中,我无法在Visual Studio 2010 Ultimate的上下文菜单中找到“resolve”。 我在互联网上的老师计算机上看过它但我在上下文菜单中找不到它,看看屏幕。如何获得它?

enter image description here

3 个答案:

答案 0 :(得分:5)

为了显示Resolve菜单,您必须定位在VS认为能够解析的关键字上。如果您输错了关键字或没有引用程序集,VS将无法解决任何问题。

如果您考虑一下,可以在代码中键入任何合法关键字,并且可能存在可能包含该类的程序集某处,您的关键字将可以解析只要您引用该程序集。由于这不仅不可能让VS知道并且还需要项目更改才能引用该程序集,因此对于“Resolve”对话框而言,这超出了范围是有意义的。

如果您希望看到这一点,只需创建一行代码中缺少类:

namespace ResolveTest
{
    class Program
    {
        static void Main(string[] args)
        {
            OtherClass.OtherMethod();
        }
    }
}

请注意,OtherClass已标记,因为找不到它。如果右键单击它,则无法解决。

现在,添加一个类定义(在另一个名称空间中):

namespace NotInTheSameSpace
{
    public class OtherClass
    {
        public static void OtherMethod()
        {

        }
    }
}

通常,这将在另一个文件或另一个程序集中,但出于演示目的,您可以将其放在现有代码下方。您现在应该看到“解决”菜单显示在Main()中。

我相信你在这里看到的另一件事是,当“Resolve”对话框没有任何东西可以解决时,它会从该上下文菜单中丢失,而不是被禁用但是可见。这可能看起来有点混乱,但实际上是努力使上下文菜单与您当前的上下文相关。

答案 1 :(得分:2)

输入File.Open("Test.txt");然后点击File了解您是否可以找到解决方法。应该可以将其解析为System.IO.File

为了记录,您在一个函数上打开了上下文菜单。功能无法仅解析类型。因此,您只需键入:Debug,然后打开上下文菜单并将其解析为System.Diagnostics。然后你可以调用WriteLine函数。

除了您的问题之外,您还需要System.Diagnostics.Debug.WriteLine(object)而不是System.Diagnostics.Debugger.WriteLine而不存在。

答案 2 :(得分:0)

长时间拍摄 - 也许你写了错误的功能名称。所以VS无法为你解决它?

如果没有,则解决方案仅将Using语句添加到文件的开头以解决问题。为此,您的项目必须具有对具有该功能的库的正确引用。您可以使用“解决方案资源管理器”(附加图片中的右侧菜单),在项目下您有“参考”选项卡,确保它在那里,如果没有右键单击并“添加参考...”