We have a DNN site that is currently running platform v7.3.4.
This site contains a module that utilises the ReportViewer v14.0 control, however since upgrading to DNN platform v9.1.1 (through the various platform jumps) we are now unable to edit the pages that contain the ReportViewer containing module.
I have created a blank DNN v9.1.1 website using the installer - https://github.com/dnnsoftware/Dnn.Platform/releases/download/v9.1.1/DNN_Platform_9.1.1.129-232_Deploy.zip
I have created a new module using the Christoc template - https://github.com/ChrisHammond/DNNTemplates/releases/download/v09.00.01/DNNTemplates.vsix
And have added the ReportViewer control to view.ascx:
<%@ Control language="C#" Inherits="DotNetNuke.Modules.ReportViewerReport_Viewer_Module.View" AutoEventWireup="false" Codebehind="View.ascx.cs" %>
<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>
<rsweb:ReportViewer
ID="ReportViewer1"
runat="server"
ProcessingMode="Remote"
height="100%"
Width="100%"
SizeToReportContent="true"
BackColor="White"
InternalBorderStyle="Solid">
</rsweb:ReportViewer>
And view.ascx.cs
public void LoadReport()
{
ReportViewer1.AsyncRendering = false;
ReportViewer1.ShowBackButton = false;
ReportViewer1.ShowPromptAreaButton = false;
ReportViewer1.ShowParameterPrompts = false;
ReportViewer1.PromptAreaCollapsed = false;
ReportViewer1.ShowPrintButton = false;
ReportViewer1.ShowCredentialPrompts = false;
ReportViewer1.SizeToReportContent = true;
ReportViewer1.ShowToolBar = true;
ReportViewer1.ShowDocumentMapButton = false;
ReportViewer1.ShowPageNavigationControls = false;
ReportViewer1.ShowFindControls = false;
ReportViewer1.ShowRefreshButton = false;
ReportViewer1.ShowZoomControl = false;
ReportViewer1.ShowWaitControlCancelLink = true;
ReportViewer1.ShowExportControls = true;
ReportViewer1.KeepSessionAlive = true;
ReportViewer1.WaitControlDisplayAfter = 2000;
ReportViewer1.DocumentMapWidth = Unit.Percentage(25);
Microsoft.Reporting.WebForms.IReportServerCredentials irsc = new CustomReportCredentials("***REMOVED***", "***REMOVED***", "***REMOVED***");
ReportViewer1.ServerReport.ReportServerCredentials = irsc;
ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://xxx.xxx.xxx.xxx/ReportServer");
ReportViewer1.ServerReport.ReportPath = "/Foldername/Foldername/H01_K01";
List<ReportParameter> rptParameters = new List<ReportParameter>();
ReportParameter rptParameter = null;
rptParameter = new ReportParameter();
rptParameter.Name = "***ParameterName***";
rptParameter.Values.AddRange(new string[] { "***ParameterValue***" } );
rptParameters.Add(rptParameter);
ReportViewer1.ServerReport.SetParameters(rptParameters);
ReportViewer1.ServerReport.Refresh();
}
I have created a test page with view rights for all users, loaded this module into it.
The page is loading correctly, except when trying to edit it; this is when it produces the following error:
Server Error in '/' Application.
Cannot unregister UpdatePanel with ID 'DocMap' since it was not registered with the ScriptManager.
This might occur if the UpdatePanel was removed from the control tree and later added again, which is not supported.
Parameter name: updatePanel
Description: An unhandled exception occurred during the execution of the current web request.
Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.ArgumentException: Cannot unregister UpdatePanel with ID 'DocMap' since it was not registered with the ScriptManager.
This might occur if the UpdatePanel was removed from the control tree and later added again, which is not supported.
Parameter name: updatePanel
Source Error:
The source code that generated this unhandled exception can only be shown when compiled in debug mode.
To enable this, please follow one of the below steps, then request the URL:
1. Add a "Debug=true" directive at the top of the file that generated the error. Example:
<%@ Page Language="C#" Debug="true" %>
or:
2) Add the following section to the configuration file of your application:
<configuration>
<system.web>
<compilation debug="true"/>
</system.web>
</configuration>
Note that this second technique will cause all files within a given application to be compiled in debug mode.
The first technique will cause only that particular file to be compiled in debug mode.
Important: Running applications in debug mode does incur a memory/performance overhead.
You should make sure that an application has debugging disabled before deploying into production scenario.
Stack Trace:
[ArgumentException: Cannot unregister UpdatePanel with ID 'DocMap' since it was not registered with the ScriptManager.
This might occur if the UpdatePanel was removed from the control tree and later added again, which is not supported.
Parameter name: updatePanel]
System.Web.UI.PageRequestManager.UnregisterUpdatePanel(UpdatePanel updatePanel) +162
System.Web.UI.ScriptManager.System.Web.UI.IScriptManagerInternal.UnregisterUpdatePanel(UpdatePanel updatePanel) +50
System.Web.UI.UpdatePanel.OnUnload(EventArgs e) +42
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +247
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Control.UnloadRecursive(Boolean dispose) +178
System.Web.UI.Page.UnloadRecursive(Boolean dispose) +23
System.Web.UI.Page.ProcessRequestCleanup() +57
System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +245
System.Web.UI.Page.ProcessRequest() +72
System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +22
System.Web.UI.Page.ProcessRequest(HttpContext context) +58
ASP.default_aspx.ProcessRequest(HttpContext context) +4
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +188
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.7.2114.0
Is anyone aware of if it is possible to get the ReportViewer to work with any of the DNN Platforms since v9.0.0? Any help would be greatly appreciated.