【问题标题】:How to obtain report URL from SSRS .rdlc report?如何从 SSRS .rdlc 报告中获取报告 URL?
【发布时间】:2013-02-17 22:45:21
【问题描述】:

我正在寻找一种从 SSRS 报告中获取报告 URL 的方法,该报告在 ASP.NET Web 应用程序中本地定义。我试过使用Globals!ReportServerUrl 内置字段,但它没有给我任何有用的东西(当我将值放在文本框中时显示为#ERROR)。我想这是意料之中的,因为报告实际上并不存在于报告服务器上,而是在应用程序中本地定义的。任何输入将不胜感激。

提前致谢。

【问题讨论】:

  • .rdlc 报告是在 本地 呈现的 - 不是在服务器上......所以你到底在说什么 URL ???
  • 确实如此,我只是在寻找报告的 URL。我试图避免通过参数传递它,但看起来这可能是我唯一的选择......
  • 您是否将其 URL 视为通过您的 Web 应用程序到达报告的路径?因为,正如@marc_s 指出的那样,如果报告是本地的,则根据定义它们不在服务器上,因此没有有意义的ReportServerUrl
  • 是的,我希望有办法从报告中访问请求字符串(就像你可以在 ASP.NET 页面对象中做的那样),而不仅仅是将它作为参数传递.我真的只需要请求的域,但看起来没有任何方法可以做到这一点。
  • 你想通过访问请求 URL 来实现什么?正如我所说 - 这些 RDLC 报告是在本地呈现的,没有报告服务器 - 所以没有可使用的 URL ....

标签: asp.net reporting-services


【解决方案1】:

正如 cmets 中所指出的,RDLC 是“本地”呈现的。这-令人困惑-可能在服务器上,但仍然没有报告服务器 URL(这是错误的原因)。

在报告中没有明显的方法可以找到任何 HttpContext 项,例如您似乎在寻找的请求 URL。

最简单的解决方案可能是 create a report parameter @RequestUrl 并将 something from the HttpRequest 传递给它。

(还有Custom Code,你可以试试,但我怀疑它可以访问请求的URL。)

【讨论】:

  • 谢谢,我不确定有什么方法可以获取上下文,我想没有。我已经继续,只是在我的过程中对 URL 进行了参数化,以便可以构建链接以将用户发送回他们“来自”的同一台服务器。
猜你喜欢
  • 2019-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多