Excel2 自定义连接管理器示例
新建日期: 2006 年 4 月 14 日
Excel2 自定义连接管理器示例说明了如何创建自定义连接管理器、Excel2 连接管理器以及相关的用户界面。基于 Itanium 的操作系统不支持此示例。
有关如何创建自定义连接管理器的详细信息,请参阅Creating a Custom Connection Manager。有关在 Integration Services 中使用连接管理器的一般信息,请参阅Integration Services 连接和连接管理器。
自定义连接管理器使用 OleDb .NET Framework Data Provider 和 Microsoft OLE DB Provider for Jet 连接到可用的 Microsoft Excel 工作簿,并从其 AcquireConnection 方法返回打开的 OleDbConnection 对象。在包中创建 Excel2 连接管理器的新实例时,其自定义用户界面将提示您输入 Excel 工作簿的路径。此连接管理器还提供一个用于指定导入模式的复选框。这样就解决了当 Excel 列包含文本和数字的混合数据时经常出现的一个问题。
注意: |
---|
Excel2 自定义连接管理器示例不能用于 Excel 源和目标。请使用 DataReader 源和目标测试它。 |
此代码示例实现了以下功能:
- 替换ConnectionManagerBase 类。
- 持久性支持。
重要提示: |
---|
提供的示例仅供教学使用。这些示例不是针对生产环境设计的,也没有在生产环境中进行测试。对于这些示例,Microsoft 不提供相关的技术支持。 |
运行示例
如果您已经知道如何定位、生成和安装代码示例,则可以直接跳到测试示例一节,了解如何配置和运行此示例。
必备组件
此示例要求安装下列组件:
- Microsoft Visual Studio 2005
- Microsoft SQL Server 2005 Integration Services
位置
如果代码示例安装到默认位置,则该示例将位于以下目录中:
C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\\Programming Samples\Control Flow\Excel2ConnectionManager Sample
代码示例的 C# 解决方案位于 Excel2ConnMgrCS 目录中,而 Visual Basic 解决方案位于 Excel2ConnMgrVB 目录中。
有关安装示例所需的两步过程的信息,请参阅安装示例。若要获取最新版本的示例(包括在 SQL Server 2005 首次发布之后发布的新示例),请参阅 SQL Server 2005 示例和示例数据库(2006 年 4 月)。
生成示例
如果尚未在 Samples 文件夹中生成强名称密钥文件,则请使用以下过程生成此密钥文件。在“项目属性”对话框的“签名”选项卡中配置示例项目,以在生成时使用此密钥文件对程序集签名。
生成强名称密钥文件
若要打开 Microsoft Visual Studio 2005 命令提示,请单击“开始”,依次指向“所有程序”、Microsoft Visual Studio 2005 和“Visual Studio 工具”,然后单击“Visual Studio 2005 命令提示”。
- 或 -
若要打开 Microsoft .NET Framework 命令提示,请单击“开始”,依次指向“所有程序”和 Microsoft .NET Framework SDK v2.0,然后单击“SDK 命令提示”。
在命令提示符下,使用更改目录 (CD) 命令将命令提示窗口的当前文件夹更改为 Samples 文件夹。在此文件夹中创建的密钥文件将由所有 SQL Server 2005 代码示例使用。
注意: 若要确定示例所在的文件夹,请单击“开始”,依次指向“所有程序”、Microsoft SQL Server 2005 、“文档和教程”,然后单击“示例目录”。如果使用了默认安装位置,则示例将位于 <system_drive>:\Program Files\Microsoft SQL Server\90\Samples 中。 在命令提示符下,运行以下命令以生成密钥文件:
sn -k SampleKey.snk
重要提示: 有关强名称密钥对的详细信息,请参阅 MSDN 上 .NET 开发中心中的“安全简讯:.NET Framework 中的强名称和安全性”。 在后续步骤中,您需要密钥文件中的公钥标记。若要获取公钥标记,请先在命令提示符下运行以下命令,以将公钥从密钥文件提取至新文件:
sn -p SampleKey.snk SampleKeyPublic.snk
现在,在命令提示符下运行以下命令,便会在新文件中显示公钥标记:
sn -t SampleKeyPublic.snk
将公钥标记复制到剪贴板或将其保存起来以便将来使用。
在 Microsoft Visual Studio 2005 中生成示例
在**“文件”|“打开”菜单中,单击“项目”**并打开 Excel2ConnMgrVB.sln 或 Excel2ConnMgrCS.sln。
在解决方案资源管理器中,选择 Excel2ConnMgrVB 或 Excel2ConnMgrCS 项目。
在 Excel2ConnMgrCS.cs 文件或 Excel2ConnMgrVB.vb 文件中的类声明之前找到 DtsConnection 特性,并用先前从密钥文件中获取的公钥标记替换该特性的 UITypeName 属性中公钥标记的字母数字值。
在**“生成”菜单上,单击“生成解决方案”**以生成解决方案。
安装示例
同时提供此示例的 Visual Basic 和 C# 版本。为了区分每个示例版本的程序集,在输出程序集的名称中追加有 CS 或 VB。成功生成组件后,在 Business Intelligence Development Studio 中按照以下步骤将其添加为包中的连接管理器。
将组件复制到 Connections 文件夹
打开 Windows 资源管理器或要在文件系统中使用的首选应用程序。
将程序集(Excel2ConnMgrCS.dll 和 Excel2ConnMgrUICS.dll 或者 Excel2ConnMgrVB.dll 和 Excel2ConnMgrUIVB.dll)复制到位于 %system%\Program Files\Microsoft SQL Server\90\DTS\Connections 的 Connections 文件夹。
通过拖放程序集的方式将组件安装到全局程序集缓存 (GAC) 中
打开 Windows 资源管理器或要在文件系统中使用的首选应用程序。
将程序集从 Connections 文件夹拖到全局程序集缓存 (GAC) 所在的文件夹,即 %system%\assembly 文件夹。
使用 gacutil.exe 将组件安装到全局程序集缓存 (GAC) 中
打开命令提示符窗口。
键入以下命令以将 C# 版本的组件和用户界面安装到 GAC:
gacutil.exe -iF "C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\Excel2ConnectionManager Sample\CS\Excel2ConnMgrCS\bin\Debug\Excel2ConnMgrCS.dll" gacutil.exe -iF "C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\Excel2ConnectionManager Sample\CS\Excel2ConnMgrUICS\bin\Debug\Excel2ConnMgrUICS.dll"
- 或 -
键入以下命令以将 Visual Basic 版本的组件和用户界面安装到 GAC:
gacutil.exe -iF " C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\Excel2ConnectionManager Sample\VB\Excel2ConnMgrVB\bin\Debug\Excel2ConnMgrVB.dll" gacutil.exe -iF " C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Programming Samples\Control Flow\Excel2ConnectionManager Sample\VB\Excel2ConnMgrVB\bin\Debug\Excel2ConnMgrUIVB.dll"
测试示例
现在就可以测试包中的自定义连接管理器了。
使用包中的示例连接管理器
在 SSIS 设计器的连接管理器区域中单击右键,选择**“新建连接”,然后在可用的连接类型列表中选择 EXCEL2。单击“确定”**。
编辑新的连接管理器。在**“Excel2 连接管理器编辑器”**中,定位到可用的 Excel 工作簿文件。使用复选框指定表头设置和导入模式设置。
注意: Excel2 自定义连接管理器示例不能与仅支持内置 Excel 连接管理器的 Excel 源一起使用。请改用 DataReader 源测试它。