在Razor中编写代码时,智能感知下拉框不起作用。它会打开,然后在不到一秒钟后关闭。当有以下括号时,MVC/Razor - 智能感知弹出窗口关闭
当我正在写一个类或类似的东西时,这种情况不会发生在我的视图上。
为了解释为I型
- @Html会发生什么。
- 智能感知框打开并保持打开状态。
- @ Html.DisplayFor(p值=> M)//的闭括号自动由VS
- 写入的框打开在显示具有M开始可能的输入,但立即关闭。
- @ Html.DisplayFor(p值=>模型。)
- 盒子打开并显示与模型相关联的属性,但随后立即关闭。
然而,如果我添加一个空间:
- @ Html.DisplayFor(p值=> M)
- 盒保持打开。
- @ Html.DisplayFor(p值=>模型。)
- 盒保持打开。
有没有设置或东西是这样对我?
通过关闭和重新打开VS以及重建项目,此问题依然存在。
使用Visual Studio 2015 Professional 2015更新2 在做MVC时使用Razor。 如果有可能导致此问题的设置,我也安装了Web Essentials。
当使用ctrl-space触发弹出窗口时会发生什么? VS可能只是在解析你的代码,并意识到原始的弹出窗口内容是无效的。有时候部分编写错误的代码会导致整个文件不可分析,这意味着有关可用成员的所有信息都将丢失。 JetBrains Resharper在解析和自动完成方面做得更好。 – Charlie
@Charlie ctrl +空格将正确打开弹出窗口并保持打开状态。我将如何去跟踪“部分写入错误的代码”? – hcaelxxam
部分编写的错误代码非常有用。最好的例子是当你启动一个if语句并打开大括号(可能来自一个粘贴)但不提供大括号。解析器不能找到类的结尾,所以它只是放弃,直到你得到所有大括号来匹配。您可能还有其他一些选项或插件,它们是“偷取焦点”并导致弹出窗口消失。这将很难追查到。您可以尝试禁用所有插件,将您的设置重置为默认等,并查看它是否消失。重新启动计算机也可能工作。 – Charlie