投影快照中的长度计算不一致

时间:2018-09-06 18:22:36

标签: visual-studio

在Visual Studio 2017中,当我工作时发生了意外情况。我正在编辑razor视图(没什么特别的,只是普通的编辑-我复制了粘贴的一小段文本),突然间我收到了以下消息:

enter image description here

我尝试重新启动Visual Studio,删除suo文件,删除我的临时文件夹...现在,我无法在此特定视图中工作。如果我尝试更改此.cshtml中的任何内容,则会收到上面的消息或以下消息:

enter image description here

这是什么?我不记得在Visual Studio的早期版本中看到过这种情况。如何避免这种情况并继续进行工作?

3 个答案:

答案 0 :(得分:1)

我发现了一个问题,they claim the issue was fixed in the new version。因此,我进行了更新,但问题仍然存在,可能是因为它是在旧版本中触发的。

清洁/重建无效。更新后我最终做了什么(我不知道是否所有步骤都必要,但这对我有用):

  • 复制旧文件的内容(必要时进行编辑,我没有 当时有有效的.cshtml,但我不想再次遇到相同的错误)
  • 创建了一个新文件,并将内容粘贴到其中
  • 删除旧文件
  • 提交代码
  • 将旧文件重命名为新名称
  • 再次输入代码

然后解决了

答案 1 :(得分:1)

我在VS 2019中得到了这个,只是需要重新启动VS。

答案 2 :(得分:1)

我今天也使用 Visual Studio 2019 遇到了这个问题。编辑器显示了一堆看起来像是插入到文件中间的元数据。当我没有注意到垃圾文本时,它甚至最终被签入了我的存储库。

任何试图“修复”(即删除)垃圾数据的尝试都会导致 OP 的错误或其他奇怪的错误。关闭 VS 并重新加载没有帮助。

最后所做的工作是将文件内容(奇怪的是,当从 VS 复制到剪贴板时不包括垃圾数据)复制到 Notepad++ 中的新文件,然后关闭 VS ,将 Notepad++ 中的文件保存在原始文件的顶部,然后重新加载项目。之后一切都很好。

似乎有些事情出问题了,它的缓冲区被交叉了之类的。一旦发生这种情况,VS 将无法再处理该文件,唯一的选择似乎是在 VS 之外对其进行编辑。