- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 C# 控制台应用程序中,我尝试在我们的报告服务器上呈现 SSRS 报告,然后将其流式传输到 PDF 文件。我找到了多份文档,但遇到了障碍……如何添加对报表执行服务的引用?
我能够遵循代码示例中的第一步......我添加了一个服务引用/单击添加 Web 引用,键入 http://ServerName/ReportServer_XXX/reportservice2010.asmx
,(我通过远程连接到服务器并运行 RS Config Manager 获得了 ReportServer_XXX
)。然后我可以这样做:
var rs = new ReportingService.ReportingService2010();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
// etc.
下一步是添加对 ReportExecutionService
的 Web 引用,它具有 Render()
方法来实际将 PDF 输出为字节数组。但是,当我输入 URL 时:http://ServerName/ReportServer_XXX/reportexecutionservice2010.asmx
(或 ...2005.asmx
),它会显示一个标题ServerName/ReportServer_XXX -/
以及我们 SSRS 站点中的文件夹(章节、财务、营销等)。“添加引用”按钮变灰。
我在做什么愚蠢的事情?谢谢!
最佳答案
你根本没有做傻事。但是,您可能希望将该 URL 更改为类似这样的内容。
ReportExecutionService rexec = new ReportExecutionService();
rexec.Credentials = System.Net.CredentialCache.DefaultCredentials;
rexec.Url = "http://<your report server>/reportserver/ReportExecution2005.asmx";
我知道这是违反直觉的。我正在使用 SSRS 2017 和 VS 2017,它仍然是“2005”。以下是 Microsoft 的 SSRS 样板文件:
string encoding = null;
Warning[] warnings = null;
string[] streamIDs = null;
ExecutionInfo execInfo = new ExecutionInfo();
ExecutionHeader execHeader = new ExecutionHeader();
rexec.ExecutionHeaderValue = execHeader;
execInfo = rexec.LoadReport(reportPath, historyID);
rexec.SetExecutionParameters(parameters, "en-us");
Console.WriteLine("SessionID: {0}", rexec.ExecutionHeaderValue.ExecutionID);
try
{
Console.WriteLine(reportName.ToString());
result = rexec.Render(format, devInfo, out string extension, out string
mimeType, out encoding, out warnings, out streamIDs);
execInfo = rexec.GetExecutionInfo();
Console.WriteLine("Execution date and time: {0}", execInfo.ExecutionDateTime);
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.OuterXml);
Dts.Events.FireError(0, "Error ",e.Message+ "\r" + e.StackTrace, String.Empty,0);
Dts.TaskResult = (int)ScriptResults.Failure;
}
关于c# - 在 C# 控制台应用程序中呈现 SSRS;在哪里可以找到 SSRS ReportExecutionService?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52725316/
在 C# 控制台应用程序中,我尝试在我们的报告服务器上呈现 SSRS 报告,然后将其流式传输到 PDF 文件。我找到了多份文档,但遇到了障碍……如何添加对报表执行服务的引用? 我能够遵循代码示例中的第
在 C# 控制台应用程序中,我尝试在我们的报告服务器上呈现 SSRS 报告,然后将其流式传输到 PDF 文件。我找到了多份文档,但遇到了障碍……如何添加对报表执行服务的引用? 我能够遵循代码示例中的第
我是一名优秀的程序员,十分优秀!