Note: The problem has been solved. For details, refer to the solution to the "one time in a hundred years" strange problem.
Cause
After one day of fighting yesterday, I finally found the cause of the strange problem before dinner. (For details about the problem, see the previous blog post: a rare problem in a hundred years: When ie encounters. NET Framework 4.5)
The cause is: when the server is installed. after the Net Framework 4.5, in IE, if ASP. when the Ajax request processed by net MVC is not completed, the connection is interrupted (for example, F5 refresh the browser), and the subsequent request will be stuck.
Problem Verification
Use IE to Access Flash Memory (http://home.cnblogs.com/ing/), press F12 to open the developer tool, wait for all Ajax requests to be executed and then refresh the browser, the problem will not appear.
In the test environment, we cancel all Ajax requests and the problem will not occur.
Problem Analysis
Why does this problem occur when an Ajax request is interrupted?
My guess is: after an Ajax request is interrupted, the Server ASP.. Net Runtime is retained by the thread that processes the request (ie may continue to maintain the connection during refresh), and the subsequent request continues to be processed by this thread, so it gets stuck. Therefore, restarting IE will disappear because IE initiates a new connection and the server uses a new thread to process the connection. This also explains that the first request will never cause any problems.
The following is an analysis of the five strange points in the previous blog:
1."One of the strange problems:The server is Microsoft's ASP. NET environment. The problem is not other browsers, but Microsoft's own IE browser ."
Guess: When refreshing, ie may be treated differently from other browsers, and IE will continue to maintain the same HTTP connection. The Server ASP. NET runtime processes a thread that previously served the connection (possibly a change to. NET Framework 4.5 ).
2."Strange problem 2:The first request of IE will not be faulty, but the problem will only occur in subsequent requests ."
Because the problem only occurs in the request after the Ajax request is interrupted.
3."Strange problem 3:There are multiple sites on the same server. This problem occurs only on this site. For the same site (home.cnblogs.com), this problem only occurs on the homepage and flash-related pages ."
The problematic page has a special feature-there are many Ajax requests, and the problem may be related to the number of Ajax requests.
4."Strange Problem 4:Webforms and MVC both have this problem ."
The problem occurs when ASP. NET Runtime is used on the server to process the request. Therefore, it has nothing to do with webforms or MVC.
5."Strange Problem 5:In In global. asax, cancel all MVC route registration (routes. maproute), and the problem disappears ."
Because Ajax requests are handled by MVC, canceling the MVC route registration does not interrupt Ajax requests.
Continue to fight
Further efforts should be made to study the causes and solutions...
Latest Progress
After the Ajax request is processed from MVC to Web Service (. asmx), the problem no longer occurs. It can be seen that it has nothing to do with browsers and Js.