据我所知,这不是休息 URI 的工作方式。您需要构建字符串并首先将其完全形成,而不是在其上定义变量。你可以在代码中做一些事情(使用 HTML 表单作为基础)
在下面的示例中,有四个明确的事情需要理解:
A. 表单中的“操作”必须是报告的 Web 服务位置并发布给自己。(或者你可以做一个 iframe 元素,但我没有搞砸那么多)
B. 'input' 元素是基于文本的,但您必须将 id 和 name 与传入的参数的名称相匹配。
C. 'select' 元素为用户提供了保存方法的“选项”,以直接输出到常用类型。
D. 一种“提交”类型的“输入”确保表单将使用规定的数据发布到自身。
<!DOCTYPE HTML>
<html>
<head>
<title>SSRS Tester</title>
</head>
<body>
<form id="SSRSRender" action="http:// (reportservername)/ReportServer?/(pathtoreport)" method="post" target="_self">
<H3>Enter some detail for the report to render</H3>
My Variable 'Test': <input type="text" id="Test" name="Test">
<br/>
My outputs:
<select ID="rs:format" name="rs:format" size=1>
<option value="HTML4.0">HTML 4</option>
<option value="IMAGE">Tiff Image</option>
<option value="PDF">PDF</option>
</select>
<br/>
<input type="submit" value="Render Report">
</form>
</body>
</html>
如果您想做更多类型的输入变量以动态地让 SSRS 在 SSRS 登录页面之外呈现,您需要确定是否要使用:
- 带有一些前端脚本的服务,例如带有 HTML 的 javascript
- 更容易控制的东西是预构建的工具,例如带有 ASP.NET 的“报表查看器”或 C# 或 VB.NET 中的客户端应用程序
- 在类库中自己创建服务代理,并直接在代码中进行调用以及格式化
通过联系服务并使用内置方法恕我直言,而不是尝试制作字符串,尝试以编程方式创建休息 URI 更好。这可能是一个学习曲线,但它最终会帮助你。