zoukankan      html  css  js  c++  java
  • Render RDLC to Client directly

    /// <summary>

    /// References:

    /// </summary>

    private void RenderReport() {

        LocalReport localReport = new LocalReport();

        localReport.ReportPath = Server.MapPath("~/Report.rdlc");
      

        //A method that returns a collection for our report

        //Note: A report can have multiple data sources

        List<Employee> employeeCollection = GetData();

        //Give the collection a name (EmployeeCollection) so that we can reference it in our report designer

        ReportDataSource reportDataSource = new ReportDataSource("EmployeeCollection", employeeCollection);

        localReport.DataSources.Add(reportDataSource);

        string reportType = "PDF";

        string mimeType;

        string encoding;

        string fileNameExtension;

        //The DeviceInfo settings should be changed based on the reportType

        //http://msdn2.microsoft.com/en-us/library/ms155397.aspx

        string deviceInfo =

        "<DeviceInfo>" +

        "  <OutputFormat>PDF</OutputFormat>" +

        "  <PageWidth>8.5in</PageWidth>" +

        "  <PageHeight>11in</PageHeight>" +

        "  <MarginTop>0.5in</MarginTop>" +

        "  <MarginLeft>1in</MarginLeft>" +

        "  <MarginRight>1in</MarginRight>" +

        "  <MarginBottom>0.5in</MarginBottom>" +

        "</DeviceInfo>";

        Warning[] warnings;

        string[] streams;

        byte[] renderedBytes;

        //Render the report

        renderedBytes = localReport.Render(

            reportType,

            deviceInfo,

            out mimeType,

            out encoding,

            out fileNameExtension,

            out streams,

            out warnings);

        //Clear the response stream and write the bytes to the outputstream

        //Set content-disposition to "attachment" so that user is prompted to take an action

        //on the file (open or save)

        Response.Clear();

        Response.ContentType = mimeType;

        Response.AddHeader("content-disposition", "attachment; filename=foo." + fileNameExtension);

        Response.BinaryWrite(renderedBytes);

        Response.End();

    }

    摘自:http://weblogs.asp.net/rajbk/archive/2006/03/02/How-to-render-client-report-definition-files-_28002E00_rdlc_2900_-directly-to-the-Response-stream-without-preview.aspx

  • 相关阅读:
    jsp Ajax请求(返回xml数据类型)
    springboot整合mybatis
    springboot使用jdbcTemplate案例
    springboot使用jpa案例
    使用SpringBoot访问jsp页面
    SpringBoot使用thymeleaf案例
    SpringBoot
    Dobbox
    Spring Jpa
    SSM整合Dubbo登陆案例
  • 原文地址:https://www.cnblogs.com/sdikerdong/p/3099974.html
Copyright © 2011-2022 走看看