【Stimulsoft Reports Server教程】将报表导出到文件

发布时间 : 2019-01-15 11:03:08.000|阅读 279 次

概述:此示例项目显示如何将报表shapshot项目导出到硬盘驱动器上的文件。为此,您可以使用reportsnapshots命令组的export REST命令。

相关链接:

下载Stimulsoft Reports Flex最新版本

此示例项目显示如何将报表shapshot项目导出到硬盘驱动器上的文件。为此,您可以使用reportsnapshots命令组的export REST命令。作为参数,您需要使用导出参数指定文件项名称和导出集。这些参数可以作为请求发布数据传递。

var reportSnapshotKey = "897324aec5154c6fb102f47ff9267a42";
 
var url = "http://localhost:40010/1/reportsnapshots/" + reportSnapshotKey + "/export";
var requestRun = WebRequest.Create(url);
requestRun.Method = "PUT";
requestRun.ContentType = "application/x-www-form-urlencoded";
 
requestRun.Headers.Add("x-sti-SessionKey", sessionKey);
requestRun.Headers.Add("x-sti-DestinationItemKey", filefolderKey);
 
var postData = "{ 'FileItemName':'ExportReport.pdf', 'ExportSet':" + 
    "{ 'Ident':'Pdf', 'PageRange':{ },'EmbeddedFonts':false,'DitheringType':'None','PdfACompliance':true} }";
byte[] bytes = Encoding.GetEncoding(1251).GetBytes(postData);
Request(requestRun, postData);
var s = GetResponseResult(requestRun);

您可以使用以下方法将请求发送到服务器并获取请求的结果。

private void Request(WebRequest request, string postData)
{
    var bytesCreateSnapshot = Encoding.GetEncoding(1251).GetBytes(postData);
    request.ContentLength = bytesCreateSnapshot.Length;
    using (Stream ws = request.GetRequestStream())
    {
        ws.Write(bytesCreateSnapshot, 0, bytesCreateSnapshot.Length);
        ws.Flush();
    }
}
 
private string GetResponseResult(WebRequest request)
{
    var resp = request.GetResponse();
    var respStream = resp.GetResponseStream();
    if (respStream != null)
    {
        using (var stream1 = new StreamReader(respStream))
        {
            var s = stream1.ReadToEnd();
            return s;
        }
    }
    return null;
}

下面的屏幕截图中,您可以看到示例代码的结果。

Stimulsoft

下载示例

购买Stimulsoft正版授权,请点击“咨询在线客服”哟!

Stimulsoft资源合集专题页

在线
客服
微信
QQ 电话
023-68661681
返回
顶部