0

我有一个引用 Sitecore DLL 的 Visual Studio 2012 项目。(Sitecore 是供应商。)

几个星期以来,Intellisense 运行良好。昨天,在安装 Patch Tuesday 更新并重新启动后,Intellisense 不再适用于 Sitecore DLL 中的内容。不知道有没有来信。

Intellisense 仍然适用于 .NET Framework 的东西。例如,如果我输入字符串。在一个方法中,我得到了 Intellisense。

该项目具有对在解决方案资源管理器中的引用下定义的 Sitecore 命名空间的引用。具体来说,引用是Sitecore.Kernel,它来自Sitecore.Kernel.dll

如果我右键单击References下的Sitecore.Kernel并选择View in Object Browser,我可以很好地浏览 DLL。此外,我的项目构建良好;该项目有一些引用 Sitecore.* 命名空间部分的using语句,并且它使用这些命名空间中的对象。

如果我键入using Site并按 Ctrl-空格键,我应该会看到 Intellisense 建议{} Sitecore,但它显示的只是:

输入“使用站点”后的智能感知,显示与 Sitecore 内容不匹配

如果我尝试在 Sitecore 命名空间中的任何对象上使用 Intellisense,我不会收到 Intellisense 建议。

其他领域的建议不起作用。例如:

  • 编辑 > IntelliSense > 刷新本地缓存:没有刷新本地缓存选项。是的,我确实打开了一个 CS 文件,然后正在编辑它。
  • 删除 %AppData%\Roaming\Microsoft\VisualStudio\11.0\ReflectedSchemas:那里没有ReflectedSchemas文件夹。
  • 工具 > 导入和导出设置 > 重置所有设置:没有为外部内容带回 Intellisense。
  • 在 Visual Studio 命令提示符中,运行 devenv /resetuserdata:似乎已经完成了与先前技术类似的操作。对 Intellisense 没有影响。
  • 检查工具 > 选项 > 文本编辑器 > C#:检查自动列表成员参数信息。我认为无论如何这些都会被前两个步骤重置。
  • 通过VS 2012安装程序(控制面板>卸载程序),修复整个VS安装。没有效果。
  • 在 References 下删除并重新添加 Sitecore.Kernel。没有效果。

这就是真正奇怪的地方:如果我从另一个工作站远程打开这个项目——它也安装了昨天的补丁星期二的东西并重新启动——Intellisense 工作正常!我指的是使用\computername\c$...

我不确定还能尝试什么。

4

2 回答 2

0

由于我不明白的原因,我能够通过创建一个新项目并将其设置与旧项目非常相似来恢复 Intellisense。

于 2013-01-09T22:14:13.863 回答
0

您的 Web 项目还需要在项目目录的 App_Config 文件夹中包含一些 Sitecore 配置文件。(不一定包含在项目中)。

我在这里写过博客:-

http://www.seanholmesby.com/fixing-visual-studio-intellisense-in-sitecore-mvc-views/

于 2014-08-01T15:01:22.337 回答