Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 无法在Visual Studio 2015中创建Git Diff CSHTML文件_Asp.net_Git_Visual Studio_Visual Studio 2015 - Fatal编程技术网

Asp.net 无法在Visual Studio 2015中创建Git Diff CSHTML文件

Asp.net 无法在Visual Studio 2015中创建Git Diff CSHTML文件,asp.net,git,visual-studio,visual-studio-2015,Asp.net,Git,Visual Studio,Visual Studio 2015,我正在Windows 10上使用Visual Studio 2015和ASP.Net MVC 6。据我所知,一切都是最新的,但据我所知,最近我没有改变任何事情。在过去的几天里,Visual Studio已经停止让我比较*.cshtml文件的当前版本,以查看我所做的更改。它适用于我尝试过的所有其他类型的文件,只有这些文件是一个问题 我收到了错误消息“启动配置的比较工具失败”。我已经看到了一些其他帖子(比如这篇:和),但他们似乎在谈论一个更一般的不能区分的问题,这不是我看到的。这几乎就像git(或V

我正在Windows 10上使用Visual Studio 2015和ASP.Net MVC 6。据我所知,一切都是最新的,但据我所知,最近我没有改变任何事情。在过去的几天里,Visual Studio已经停止让我比较*.cshtml文件的当前版本,以查看我所做的更改。它适用于我尝试过的所有其他类型的文件,只有这些文件是一个问题

我收到了错误消息“启动配置的比较工具失败”。我已经看到了一些其他帖子(比如这篇:和),但他们似乎在谈论一个更一般的不能区分的问题,这不是我看到的。这几乎就像git(或VS?)决定只选择一种不喜欢的文件类型

我试着用一个新的git存储库创建一个新的ASP.Net项目,它发现了同样的问题,如果我重命名.cshtml文件,给它一个不同的扩展名,问题就会消失。我查看了.gittributes文件,但什么也看不到,不过老实说,除了基本的“这就是它工作时的驱动方式”之外,我真的不明白git是如何工作的。我也尝试过删除和重新安装我在电脑上能找到的所有与git相关的东西,但毫无乐趣

有人知道我能打破什么吗


更新:我刚刚发现这一点,这表明它可能与ASP.Net更新有关。我想我可能得等着瞧。

检查你的.gitignore文件以获取对.cshtml文件的引用。美元到甜甜圈,类似于*.cshtml的东西存在于特定的回购协议中。你能在git和VS之外运行差异吗

清除MEF缓存似乎也可以解决这一问题。关闭IDE并删除此目录的内容:

%LocalAppData%\Microsoft\VisualStudio\14.0\ComponentModelCache

(打开VSIX Gallery)可能也会起到同样的作用


可能与

有关,这与新ASP.Net工具的问题有关。他们显然有一个补丁要推出,但在此之前有一个解决办法:

在选项面板中,转到选项->文本编辑器->HTML->高级 将标识扩展设置为False


这是根据

的,在.gitignore文件中看不到任何内容,而且这不仅仅影响回购协议(将编辑问题以澄清这一点)。文件签入很好,只是无法区分。TortoiseGit和命令行git diff似乎工作正常。这个答案有效。这篇文章发表一年后,我也遇到了同样的问题。我关闭了VS并删除了ComponentModelCache文件夹,一切都恢复正常。谢谢,这对我很有帮助。C:\Users\\AppData\Local\Microsoft\VisualStudio\14.0\ComponentModelCache