VS 2008 / SQL 2008
我正在将.csv文件导入SQL Table。
我想从C#代码中动态传递源文件和目标连接字符串。
由于某些原因,此代码运行良好,但包未执行!如何动态地将连接字符串从C#代码传递到SSIS包!!
string strSourceConn = Server.MapPath(filePlacedOrder.Value);
string strDestConn = System.Configuration.ConfigurationManager.AppSettings["SDB"];
string pkgLocation = Server.MapPath("Package.dtsx");
Package pkg;
Microsoft.SqlServer.Dts.Runtime.Application app;
DTSExecResult pkgResults;
app = new Microsoft.SqlServer.Dts.Runtime.Application();
pkg = app.LoadPackage(pkgLocation, null);
pkg.Variables["sConn"].Value = strSourceConn;
pkg.Variables["dConn"].Value = strDestConn;
pkgResults = pkg.Execute();发布于 2011-05-10 02:34:49
动态更改连接字符串的最佳方法是从包中检索所需的连接,然后更改其连接字符串。这与使用连接信息设置变量不同。在这种情况下,您需要使用:
pkg.Connections["sConn"].ConnectionString = strSourceConn;
pkg.Connection["dConn"].ConnectionString = strDestConn;其中sConn和dConn是包中连接的名称。
https://stackoverflow.com/questions/5670109
复制相似问题