Нужно ли отключать частичное отображение для отчета SSRS?

На сайте ASP.NET, над которым я работаю, есть несколько отчетов SSRS в виде страниц. Для каждой из этих страниц (но не для любых других) раскрывающийся список RadMenu главной страницы не работает, и это происходит потому, что страница просмотра отчета отключает частичный рендеринг через диспетчер сценариев в событии Page_Init.

К сожалению, первоначальный разработчик больше не доступен, и никто здесь не знает наверняка, почему частичный рендеринг был отключен. Ничего не сломается, если я включу частичный рендеринг, но это кажется плохим оправданием, учитывая, насколько преднамеренным был выбор.

Это код для события 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 ответ

Решение

Я включил частичный рендеринг и развернул изменение в нашем экземпляре QA и в нашем промежуточном экземпляре, и включение частичного рендеринга не оказало какого-либо негативного влияния на страницу, поэтому, похоже, проблемы нет.

Другие вопросы по тегам