- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在我的 ReportServer 上部署了一份报告。此报告使用共享数据源,该数据源也部署在 ReportServer 上。我在使用 WindowsFormsHost 控件的 WPF 应用程序中使用 ReportViewer。通过配置 ReportViewer 的 ServerReport 属性,我能够在我的应用程序中正确显示来自 ReportServer 的报告。
我的问题是,是否可以更改部署在我的报表正在使用的 ReportServer 上的共享数据源的连接字符串。
实际上我想对同一个数据库的多个副本使用相同的报告以进行测试和迁移。
谁能告诉我一个用 C# 代码更新共享数据源的解决方案?
最佳答案
无法通过 ReportViewer 更改报表的数据源。您可以使用 Web 服务更改数据源,但这实际上会为所有用户更改服务器上的数据源 - 可能不是您想要的。
我认为最接近的方法是使用嵌入式数据源构建报表,该数据源使用参数值来控制其连接字符串。您可以构建一个共享数据集,按名称(“测试”、“迁移”等)提供连接字符串,并将该名称作为参数传递给报告。
你需要:
NamedConnections
。这些可以来自共享数据源中的表,也可以在数据集的查询中进行硬编码。@NamedConnection
参数并返回作为完整连接字符串的单个字符串值的共享数据集。同样,这些可以来自数据库或被硬编码。我们称它为 SelectedConnection
@NamedConnection
参数。这应该是可见的,并且应该使用 NamedConnections
数据集作为其可用值。@ConnectionString
内部 参数,它使用 SelectedConnection
数据集作为其默认值。@ConnectionString
参数。这允许您使用数据集设计器来构建您的数据集。我将其称为 StaticConnection
。@ConnectionString
参数作为其连接字符串。报表设计完成并准备好部署后,切换您的数据集以使用此数据源。我们称它为 DynamicConnection
。例如,现在使用 ReportViewer,您将值“Test”传递给 @NamedConnection
参数。然后 SelectedConnection
数据集可以运行并向 @ConnectionString
参数提供适当的连接字符串,然后由 DynamicConnection
数据源使用。
实际的数据源引用永远不会改变,但其中的连接字符串会改变。
关于wpf - 我想从 c# 代码更新 SSRS 报告的共享数据源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29406021/
使用登录后,我想吐出用户名。 但是,当我尝试单击登录按钮时, 它给了我力量。 我看着logcat,但是什么也没显示。 这种编码是在说。 它将根据我在登录屏幕中输入的名称来烘烤用户名。 不会有任何密码。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或include a min
我是一名优秀的程序员,十分优秀!