0

更新: Chrome でのみ失敗します。これはすべて IE10 と FF で機能します。

SSRS レポートを作成し、レポート サーバーに公開しました。レポート サーバーを参照してデータを表示するレポート ビューアーを備えた別の Web アプリケーションがあります。サーバー レポートを PDF に変換すると、レポートは正常に表示されますが、非常に低速です。レポートをそのまま表示したいのですが、空白のページしか表示されません。これが私のコードです。HEREの SsrsReportInfo クラスを使用しました。私が欠けているものを教えてください。

    private void OpenServerReport()
    {
        //Create SSRS Parameters
        var reportInfo = new SsrsReportInfo("TestReport", "http://localhost/ReportServer", @"/ReportTesting2/MainReport");

        //Initialize ServerReport
        ReportViewer1.ServerReport.ReportPath = reportInfo.ReportPath;
        ReportViewer1.ServerReport.ReportServerUrl = new Uri(reportInfo.ReportServerUrl);

        if (reportInfo.Parameters != null)
        {
            ReportViewer1.ServerReport.SetParameters(reportInfo.Parameters);
        }

        ReportViewer1.ServerReport.Refresh();

        //Automatically display as PDF
        //var bytes = ReportViewer1.ServerReport.Render("PDF");
        //Response.Buffer = true;
        //Response.Clear();
        //Response.ClearContent();
        //Response.ClearHeaders();
        //Response.ContentType = "application/pdf";
        //Response.BinaryWrite(bytes);
        //Response.End();
    }

PS これは、レポート マネージャーと同じ機能です。レポート マネージャー (localhost/reports/myfolder/reportname) からレポートを選択すると、空白のページが表示されますが、保存ボタンをクリックして PDF に保存し、実際のレポートを表示できます。レポート サーバー (localhost/ReportServer/myfolder/reportname) には、レポート データが表示されます。

4

1 に答える 1

1

SSRS が MS の専有製品であり、MS が IE 用に Chrome (私も好む)、Firefox、Opera、Safari などのブラウザーとは異なるレンダリング エンジンを使用していることを除いて、何の関係もありません。別の形式にレンダリングしてからそれを提示するという頭痛の種を止めるためにできることは 2 つあります。

  1. 「IE Tab」プラグインを Chrome と Firefox、およびレポートを表示したいすべてのステーションにインストールするだけです。私は通常これを行うだけで、「Active X」または独自の MS を必要とする特定のサイトでは、うまく機能します。

  2. 予想される出力を微調整するには、SSRS サーバーのデフォルトの CSS 設定を変更する必要があります。この SSRS のクロス ブラウザー サポートを行うことは私の意見では苦痛ですが、StackOverflow の誰かが実際に何らかの理由でこの回答を 1 番以上に望んでおり、それを行うことができます。この方法の問題点は、新しいレイアウトを使用すると、別のレンダリング エンジンを偽装するだけでなく、それを処理するためにさらに多くの CSS をコーディングする必要がある別のブラウザーが強制終了されることです。

しばらくの間、Chrome で特定のレポートをレンダリングする際に問題がありましたが、今はありません。もう IE を使わなければならないと言っているサイトでは、私は IE を使っていません。Chrome を使用した IE タブのみ ;)

于 2013-10-30T21:17:29.233 に答える