Connection 对象表示数据库连接或类似资源,是 SQL Server Reporting Services 数据处理扩展插件用户的起点。 它表示与数据库服务器的连接,但具有类似行为的任何实体都可以作为 连接公开。
若要实现 Connection 对象,请创建实现和选择性实现的IDbConnectionExtension类IDbConnection。
在实现中,必须确保在执行命令之前创建并打开连接。 确保实现要求客户端显式打开和关闭连接,而不是让实现为客户端隐式打开和关闭连接。 获取连接时执行安全检查。 要求为 SSRS 数据处理扩展插件中的其他类建立现有连接,然后可确保在使用数据源时始终执行安全检查。
所需连接的属性表示为连接字符串。 强烈建议 SSRS 数据处理扩展插件使用 OLE DB 定义的熟悉的名称/值对系统来支持 ConnectionString 该属性。
注释
连接 对象通常是资源密集型获取的,因此可能需要考虑池连接或其他技术来缓解此问题。
IDbConnection 继承自 IExtension. 必须实现 IExtension 接口作为连接类实现的一部分。 该 IExtension 接口允许类实现本地化扩展名称,并处理 Reporting Services 配置文件中存储的特定于扩展的配置信息。
Connection 对象通过其实现IExtension包含LocalizedName属性。 强烈建议 Reporting Services 数据处理扩展插件支持该 LocalizedName 属性,以便用户在用户界面(如报表管理器)中遇到扩展的熟悉本地化名称。
IExtension 还使 Connection 对象能够检索和处理存储在 RSReportServer.config 文件中的自定义配置数据。 有关处理自定义配置数据的详细信息,请参阅 SetConfiguration 该方法。
卸载数据处理扩展插件类的其余部分时,不会从内存中卸载实现 IExtension 的类。 因此,可以使用 扩展 类存储跨连接状态信息或存储可在内存中缓存的数据。 只要报表服务器正在运行, 扩展 类就保留在内存中。
可以通过实现IDbConnectionExtension来扩展 Connection 类,以在 Reporting Services 中包含对凭据的支持。 实现接口的IntegratedSecurityIDbConnectionExtension、UserName属性Password时,将在报表设计器中启用“数据源”对话框的“集成安全性”复选框和“用户名和密码”文本框。 这使报表设计器能够存储和检索支持身份验证的数据源的凭据。 凭据安全存储,在预览模式下呈现报表时使用。
注释
实现IDbConnectionExtension隐式需要实现接口IExtension的成员IDbConnection。
有关 连接 类实现的示例,请参阅 SQL Server Reporting Services 产品示例。