【问题标题】:Visual Studio not showing IntelliSense descriptions anymoreVisual Studio 不再显示 IntelliSense 描述
【发布时间】:2016-05-28 14:14:21
【问题描述】:

从一个月前开始,当我用鼠标悬停它们时,我的 VS 似乎不想在任何系统方法或类的工具提示中显示摘要信息。

我安装了 ReSharper 并开始注意到这个问题。我假设 ReSharper 禁用了默认方法描述,所以我并没有进一步考虑它,只是认为它只是一种烦恼。

但删除 ReSharper 后,问题仍然存在。

VS 现在只显示我自己添加了<summary> 标签的方法的描述以及来自 NuGet 包的任何描述,但不显示 WhereEncoding.GetString 等系统方法。

我尝试过修复 VS,重置设置,取消/选中选项>文本编辑器>常规中的复选框,但无济于事。

有人遇到过类似的问题吗?

【问题讨论】:

  • 可能是个愚蠢的问题,但是第二种扩展方法('After:')描述吗?如果你要回到原来的扩展方法并将鼠标悬停在它上面......它是否也失去了它的描述?
  • @ToshiBoy 是的。这可能是一个不好的例子,因为第一张图片显示了.Where()LinqToSQL 版本,而第二张图片显示了默认的IEnumerable 版本。但是,如果您将鼠标悬停在任何系统类上,例如 ListDictionaryConsole,则看不到描述文本(在设置中称为摘要)。
  • 您已重置设置? (cli devenv.exe /ResetSettings)。几乎听起来好像 Resharper 删除了描述......你能看到定义中的描述吗?
  • 这看起来更像是一个框架问题,而不是一个 VS/R# 问题 - 好像缺少 xml 文档文件 - 检查 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework,如果你没有看到它们然后重新安装框架。
  • @LucasTrzesniewski:确实,这就是我的解决方案。 (仅)4.5.2 的 XML 文档丢失。我重新安装了 4.5.2。开发人员包并让他们回来!在有同样问题的同事的 PC 上,安装了德语文件(在“de”子文件夹中),但也没有工作。当他将我的英文 XML 文件直接复制到 4.5.2 文件夹中时,它也可以在他的 PC 上运行。

标签: c# visual-studio ide resharper intellisense


【解决方案1】:

这看起来更像是一个框架问题,而不是一个 VS/R# 问题。如果其中任何一个都无法加载描述字符串,则可能意味着描述 XML 文件丢失。

检查您是否在以下位置看到 XML 文件:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2

如果没有,请重新安装框架以解决问题。

链接到.NET Framework 4.5.2 Developer Packhttps://www.microsoft.com/en-us/download/details.aspx?id=42637

【讨论】:

  • 如果 xml 文件在那里但仍然无法正常工作怎么办?
  • @DavidS。确保你检查了你在 VS 中使用的相同框架版本的 XML 文件。除此之外,我帮不上什么忙:-\
  • 由于某种原因,它对我不起作用,并在我针对 FW 4.5.2 后开始工作。我正在使用 System.Linq 的 Enumerable.Range 进行测试,但是在任何文件夹 4.5 或 4.5.2 上都没有 System.Linq 的 xml(我希望它们位于 Facades 文件夹中的 .dll 文件旁边)
  • @LucasTrzesniewski 是否有必要重新安装框架来解决这个问题?有没有其他解决方案? v4.6.2 确实缺少 Xml 文件
  • @hstg 我刚刚检查过,我有 v4.6.2 的 xml 文件,所以是的,重新安装框架似乎是一个不错的选择。不知道有没有其他办法解决。
【解决方案2】:

尝试在“选项”>“文本编辑器”>“所有语言”>“常规”中激活“语句完成”复选框,如下图所示:

【讨论】:

    【解决方案3】:

    从 VS 中删除 ReSharper 后,这将是一个框架问题,因为在对应的文件夹 C:\Program Files(x86)\ReferenceAssemblies\Microsoft\Framework\.NETFramework\ 中将缺少所需的 *.xml 文件(您可以通过查看此文件夹来简单地检查它,如 @Lucas Trzesniewski 之前所写)。

    您还可以通过在任何标准类型或方法(例如 Console.WriteLine)上简单按 F12 在 VS 中检查它,您将只看到汇编中的方法列表,没有任何 cmets(您也可以在当前项目使用的程序集、版本和位置的页面顶部)。

    如果您的项目使用计算机上的最新版本框架,您可以通过重新安装它来简单地解决这个问题(对应“Microsoft .NET Framework 4.x.x Developer Pack”)。

    但是如果要重新安装某个以前的版本(不是最后一个),就不能这么简单了,因为后面的解释会阻塞安装过程:

    .NET Framework 4.5.x/4.6.x/4.7.x (ENU) 或更高版本已经 安装在这台计算机上。

    您可以使用下一个解决方法: 使用密钥“卸载”运行安装包(例如,对于 4.5.2 - NDP452-KB2901951-x86-x64-DevPack.exe /uninstall 之后,安装程序(在开始实际工作之前的最后一步)为您提供两个选项中的选择:Recovery 或 Uninstall,我强烈建议选择 Recovery ,因为微软不建议删除不是最新的Framework。

    附注> 您还可以选择将从包中安装的语言,因为 NDP452-KB2901951-x86-x64-DevPack.exe 是多语言包,通过使用附加选项 /lcid 1033(适用于 en-US)。 您可以通过密钥/? 接收所有可能的选项,但您必须等待一段时间,您的计算机将完全解压缩安装包(存档接近 400Mb),帮助信息将显示在单独的窗口中。

    【讨论】:

      【解决方案4】:

      另外,请检查您的项目是否引用了 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\ 文件夹中的库。为此,您可以选择每个项目引用并在属性窗口中查看它,或者使用文本编辑器编辑项目文件。

      我有一个案例,我的项目引用了位于 C:\Windows\Microsoft.NET\Framework\ 的实际运行时框架,它没有关联的 .xml 文件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-09-25
        • 2020-04-11
        • 1970-01-01
        • 2022-07-08
        • 2018-01-19
        • 2019-02-16
        • 2017-01-06
        • 1970-01-01
        相关资源
        最近更新 更多