是否需要为SSRS报告禁用部分呈现

时间:2013-03-07 20:43:52

标签: c# asp.net telerik reportingservices-2005 radmenu

我正在做一些工作的ASP.NET网站有一些SSRS报告作为页面。对于这些页面中的每一个页面(但不适用于任何其他页面),母版页的RadMenu下拉列表不起作用,这似乎是因为“报表视图”页面禁止通过Page_Init事件上的脚本管理器进行部分呈现。 / p>

不幸的是,原始的开发人员不再可用,这里似乎没有人知道为什么禁用部分渲染。如果我确实启用了部分渲染,那么似乎没有什么破坏,但考虑到选择似乎是故意的,这似乎是不合理的理由。

这是Page_Init事件的代码:

    protected void Page_Init(object sender, EventArgs e)
    {
        ScriptManager sm = ScriptManager.GetCurrent(this);
        if (sm != null)
        {
            sm.EnablePartialRendering = false;
        }
    }

RadMenu在我的母版页上,如下所示:

    <telerik:RadMenu ID="MasterPageMenu" runat="server" Height="20px" Style="top: 0px;
        left: 0px;" Width="100%" CssClass="RadMenuLevel" EnableRoundedCorners="True"
        OnItemDataBound="MasterPageMenu_ItemDataBound" OnClientItemClicking="onClicking"
        DataTextField="title" DataNavigateUrlField="url">
        <DefaultGroupSettings OffsetX="11" OffsetY="2" />
    </telerik:RadMenu>

所有报告都使用ReportViewer.aspx页面加载,下面是代码:

        <%@ Page Title="Reports" Language="C#" MasterPageFile="~/HPTS.Master"       AutoEventWireup="true"
        CodeBehind="ReportViewer.aspx.cs" Inherits="HPTS.HPTSAdmin.ReportViewer" %>

    <%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
        Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>
    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
        <style type="text/css">
            .heightTest
            {
                height: auto;
            }
            .fullheight
            {
                margin-bottom: 120px;
            }
            #testdiv
            {
                display:table;
                width:1250px;
                height:auto;
            }
        </style>

        <script language="JavaScript" type="text/JavaScript">

    window.onload=function resize(){

    var viewer = document.getElementById("testdiv");

    var htmlheight = document.documentElement.clientHeight;

    viewer.style.height = (htmlheight - 120) + "px";

    }

        </script>

    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="cphHPTS" runat="server">
        <telerik:RadAjaxManagerProxy ID="RadAjaxManagerProxyforReports" runat="server">
            <AjaxSettings>
                <telerik:AjaxSetting AjaxControlID="ReportViewerControl">
                    <UpdatedControls>
                        <telerik:AjaxUpdatedControl ControlID="ReportViewerControl" />
                    </UpdatedControls>
                </telerik:AjaxSetting>
            </AjaxSettings>
        </telerik:RadAjaxManagerProxy>
        <div id="testdiv" style="width: 100%">
            <br />
            <rsweb:ReportViewer ID="ReportViewerControl" runat="server" Font-        Names="Verdana"
                Font-Size="8pt" ProcessingMode="Remote" CssClass="fullheight" Height="8.5in"
                Width="100%" SizeToReportContent="true">
                <ServerReport ReportPath="" ReportServerUrl="" />
            </rsweb:ReportViewer>
        </div>
    </asp:Content>

1 个答案:

答案 0 :(得分:1)

我启用了部分呈现并将更改部署到我们的QA实例和我们的Staging实例,并且启用了部分呈现并没有对页面产生任何负面影响,因此看起来没有问题。