的Visual Studio 2013 - 调试MVC代码ViewBag性质死一般慢,无法使用(V

2019-10-18 21:00发布

我尝试了最新的Visual Studio,但在调试与ViewBag动态变量最基本的MVC应用程序给了我很多头疼的。

我在32位的Windows 8操作系统中运行Visual Studio 2013与全新安装,应用所有可用的更新。

我创建新的ASP.NET Web应用程序(.NET框架4.5 - 新的解决方案),与之后我加入样品Home控制器的一些元素代码文件夹和核心引用了MVC:

dynamic d1 = 1;
dynamic d2 = 2;

ViewData["Vd1"] = 1;
ViewData["Vd2"] = 2;

ViewBag.Vb1 = 1;
ViewBag.Vb2 = 2;

在第一线击中断点和步进到第二,直至ViewBag物业工作的罚款(瞬间) - 那么,在输出窗口中我得到:

类型的第一个机会异常“Microsoft.CSharp.RuntimeBinder.RuntimeBinderException”发生在Microsoft.CSharp.dll

...和步进到第二线(ViewBag.Vb2 ...)花了几秒钟。 我测试了不同的动态变量,以确保该问题与ViewBag性能。

是什么原因导致下IIS Express中的异常等慢调试? 广泛使用ViewBag特性使得调试一场噩梦!

再次调用调试下的脚本不会导致异常和调试工作得很好,因为调试符号都被加载(猜测)。

我试过很多在Stack Overflow提供不同的建议和其他过网,但它的非工作!

Answer 1:

其中一个被忽视的,从来没有报道,提高调试速度为Visual Studio 2013的问题ASP .NET应用程序(MVC和Web表单)是禁用浏览器链接。 这是在VS 2013中的新功能这会导致巨额的开销,并导致页,以极为缓慢加载(5-10秒在大多数情况下,我的)。 禁用它把它带回到Visual Studio 2012的速度。

看到这里如何禁用它:

http://blogs.msdn.com/b/webdev/archive/2013/06/28/browser-link-feature-in-visual-studio-preview-2013.aspx



Answer 2:

什么工作对我来说是选择Internet Explorer以外的其他浏览器。 如果我使用Chrome或Firefox,调试是快如闪电。 关闭浏览器链接没有帮助的Internet Explorer我。

下面是关于如何调试时更改为其他浏览器的链接。

http://www.asp.net/visual-studio/overview/2013/using-browser-link#browser-refresh



文章来源: Visual Studio 2013 - Debugging MVC code with ViewBag properties deathly slow and unusable