Vb.net 如何在VB中编程编辑SSIS包?

Vb.net 如何在VB中编程编辑SSIS包?,vb.net,ssis,Vb.net,Ssis,我们已经创建了一个作为SSIS包的工作流过程,并希望找到一种访问此代码的方法,以便通过vb.net动态访问和运行该代码。例如,我们希望更改正在使用的数据源,或者更改现有包的列映射,然后从vb.net应用程序执行它们。请建议最好的方法。你会发现你的一些任务很容易,而其他任务则不那么容易 一般来说,你会对阅读这本书感兴趣。特别感兴趣的将是和 例如,从VB.NET Imports Microsoft.SqlServer.Dts.Runtime Module Module1 Sub Main()

我们已经创建了一个作为SSIS包的工作流过程,并希望找到一种访问此代码的方法,以便通过vb.net动态访问和运行该代码。例如,我们希望更改正在使用的数据源,或者更改现有包的列映射,然后从vb.net应用程序执行它们。请建议最好的方法。

你会发现你的一些任务很容易,而其他任务则不那么容易

一般来说,你会对阅读这本书感兴趣。特别感兴趣的将是和

例如,从VB.NET

Imports Microsoft.SqlServer.Dts.Runtime

Module Module1

  Sub Main()

    Dim pkgLocation As String
    Dim pkg As New Package
    Dim app As New Application
    Dim pkgResults As DTSExecResult

    pkgLocation = _
      "C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services" & _
      "\Package Samples\CalculatedColumns Sample\CalculatedColumns\CalculatedColumns.dtsx"
    pkg = app.LoadPackage(pkgLocation, Nothing)
    pkgResults = pkg.Execute()

    Console.WriteLine(pkgResults.ToString())
    Console.ReadKey()

  End Sub
End Module
要以编程方式更改连接管理器,它应该是与

ConnectionManager item = ep.Connections["MyConnectionManagerName"]
item.ConnectionString = @"Provider=SQLNCLI10.1;Data Source=Server1;Initial Catalog=ABC;Integrated Security=SSPI;";

更改列映射,这是它将变得有趣的地方,对于单词interest的所有定义。我有一个经过提炼的示例,但它需要一些工作,您需要真正了解整个对象模型(我希望您喜欢COM)。在这方面可能会有所帮助。

不确定我是否做对了。当你说“获取此代码的访问权限”时,你是指包的后台代码吗?您可以使用包配置在运行时更改包的各种属性。但是列映射通常是静态的,并且通常不会在每次运行时更改。