ilich / MvcReportViewer

ASP.NET MVC Html Helpers for ReportViewer Control.
MIT License
282 stars 131 forks source link

Causing site to hang.... #194

Closed bfreshour closed 7 years ago

bfreshour commented 7 years ago

I'm connecting to a remote SSRS Server and running a report and returning it. When my view is calling @Html.MvcReportViewer my site becomes unresponsive for a bit (no requests will work). I ran a Performance Profiler on it to check for Concurrency and it reported a blocking issue on System.Web.UI.Page.Process called by ASP.mvcreportviewer_mvcreportviewer_aspx.ProcessRequest.

I'm at a loss for what it could causing these issues. I've tried Release version as well as Debug without any affect. Has anyone else had this issue?

It's only affecting a single browser instance. For example, while I'm loading an SSRS report in IE, if I add a new tab and try to access another page on the site it hangs. If I open up Chrome, the site loads fine. In IE, it even works if I go to File -> New Session.

Is it some sort of Session lock I'm missing?

tiesont commented 7 years ago

What OS and IE version are you seeing this in?

bfreshour commented 7 years ago

Happening in Windows 10 in Chrome 54 and IE 11.

bfreshour commented 7 years ago

It could be this:

ASP.NET does not allow the same session to execute two parallel pages simultaneously, unless they execute with a readonly-session. The later is done either in the page directive, or in web.config, by setting EnableSessionState="ReadOnly".

I added the following my Controller that is using the @Html.MvcReportViewer without any success... I also added EnableSessionState="ReadOnly" to the top of MvcReportViewer.aspx

SessionState(System.Web.SessionState.SessionStateBehavior.ReadOnly)]

bfreshour commented 7 years ago

Argh, I was adding the EnableSessionState="ReadOnly" to the MvcReportViewer.aspx in the related project, not my current project. As soon as I added it to the one in my project it started working as expected (multiple session requests can be made).

Sorry for the issue.