Asp.net mvc asp.net mvc应用程序的怪异行为。
在我的Asp.net mvc asp.net mvc应用程序的怪异行为。,asp.net-mvc,debugging,Asp.net Mvc,Debugging,在我的ASP.Net MVC应用程序中,我必须调用一个用户定义的函数。每当刷新页面时,都会调用此函数。现在问题出在哪里,它第一次运行得很完美。但是当我刷新时,正如我放置断点一样,它会反复地上下移动 这意味着,调试器转到第1行,将运行多次,然后转到第二行、第三行、第一行,依此类推。我在下面附上了照片。我正在MVC4中开发应用程序 第一个映像是第一次运行。在第二幅图中,行connection.Open()运行三次。每行都会发生这种情况。调试器突然上下移动。我不知道这是怎么回事。有人能解释一下
ASP.Net MVC
应用程序中,我必须调用一个用户定义的函数。每当刷新页面时,都会调用此函数。现在问题出在哪里,它第一次运行得很完美。但是当我刷新时,正如我放置断点一样,它会反复地上下移动
这意味着,调试器转到第1行,将运行多次,然后转到第二行、第三行、第一行,依此类推。我在下面附上了照片。我正在MVC4中开发应用程序
第一个映像是第一次运行。在第二幅图中,行
connection.Open()
运行三次。每行都会发生这种情况。调试器突然上下移动。我不知道这是怎么回事。有人能解释一下吗?谢谢。听起来就像有多个线程在调用代码时看到的那样
代码是否可能被不同的线程多次调用
要确定何时运行哪些线程,请使用调试器的“线程”窗口。转到调试>窗口>线程
以下是有关调试多线程应用程序的详细信息:
这应该可以让您了解哪些线程在运行时遇到了断点
然后检查调用堆栈并查看调用来自何处
我也会考虑打开FIDDLE或浏览器调试工具的网络选项卡,看看是否有多个请求被触发,这导致代码被多次调用,然后从那里回溯什么引发了这些Web请求。多个线程调用您的代码
代码是否可能被不同的线程多次调用 要确定何时运行哪些线程,请使用调试器的“线程”窗口。转到调试>窗口>线程 以下是有关调试多线程应用程序的详细信息: 这应该可以让您了解哪些线程在运行时遇到了断点 然后检查调用堆栈并查看调用来自何处<>我也会考虑打开你的浏览器调试工具的FIDDLE或网络选项卡,看看是否有多个请求被触发,这导致你的代码被多次调用,然后从那里回溯什么引发了这些Web请求。同时
使用此VS扩展可以限制调试器仅命中其中一个线程:这肯定是因为多个线程同时运行
使用这个VS扩展来限制调试器只命中其中一个线程:好吧,它不是唯一的调试器。当我在不调试的情况下运行应用程序时,就会发生这种情况。因此,我认为只有在使用调试运行时才限制调试器。当应用程序处于活动状态时,您有什么建议。上面的代码实际上多次获得记录。您在调试时检查过代码的调用堆栈吗?我的意思是比较调用堆栈,看看它们是由不同的方法调用的,还是都是相同的。如果它们是相同的,那么我假定您正在从视图发送重复的请求。@DhavaIR,您需要在服务器端编写锁语句,或者更改客户端以确保只调用一次您的方法。这不仅仅是调试器。当我在不调试的情况下运行应用程序时,就会发生这种情况。因此,我认为只有在使用调试运行时才限制调试器。当应用程序处于活动状态时,您有什么建议。以上代码实际上得到了多次记录。调试时是否检查过代码的调用堆栈?我是说比较调用堆栈,看看它们是由不同的方法调用的,还是它们都是相同的。如果它们是相同的,那么我假定您正在从视图发送重复的请求。@DhavaIR,您需要在服务器端写lock语句,或者更改客户端以确保只调用一次您的方法。