重新创建运行ssis包的程序。获得一个LoadPackage错误
问题描述:
using System;
using System.Windows.Forms;
using Microsoft.SqlServer.Dts.Runtime;
using Application = System.Windows.Forms.Application;
private void Execute_Package()
{
string pkgLocation = @"c:\test.dtsx";
Package pkg;
Application app;
DTSExecResult pkgResults;
Variables vars;
app = new Application();
pkg = app.LoadPackage(pkgLocation, null);
vars = pkg.Variables;
vars["A_Variable"].Value = "Some value";
pkgResults = pkg.Execute(null, vars, null, null, null);
if (pkgResults == DTSExecResult.Success)
Console.WriteLine("Package ran successfully");
else
Console.WriteLine("Package failed");
}
pkg = app.LoadPackage(pkgLocation, null); <-- LoadPackage error
我复制本例中为vs2013添加的参考,我在LoadPackage
线得到一个错误:重新创建运行ssis包的程序。获得一个LoadPackage错误
does not contain a definition for 'LoadPackage' and no extension
method 'LoadPackage' accepting a first argument of type
'System.Windows.Forms.Application' could be found (are you missing a
using directive or an assembly reference?
难道还有其他referece我需要补充的吗?我使用谷歌搜索,但没有找到。也许我只是累了。请帮忙。
答
变化:
using Microsoft.SqlServer.Dts.Runtime;
using Application = System.Windows.Forms.Application;
到:
using Microsoft.SqlServer.Dts.Runtime;
using Application = Microsoft.SqlServer.Dts.Runtime.Application;
答
您是否尝试过从代码运行DTEXEC实用程序?这就是我一直这样做的。
对不起,我不能提供一个例子,目前我在手机上。
答
好了,问题是我有using语句错误。
我正在使用Application = System.Windows.Forms.Application; 我应该使用应用程序= Microsoft.SqlServer.Dts.Runtime.Application
一个朋友工作发现问题。