我有一个SSIS项目,我正在构建一个基于某些变量的SQL命令.我正在脚本任务中构造命令,并希望将构造的SQL输出到"执行结果"窗口.我试图使用我的脚本内部的FireInformation行执行此操作,如下所示:
Dts.Events.FireInformation(99, "test", "Make this event appear!", "", 0, true);
Run Code Online (Sandbox Code Playgroud)
但是,在脚本编辑器中编辑ScriptMain.cs时,该行以红色下划线,并且在鼠标悬停时,我收到以下消息:
错误:
'Microsoft.SqlServer.Dts.Tasks.ScriptTask.EventsObjectWrapper.FireInformation(int,string,string,string,int,ref bool')的最佳重载方法匹配包含一些无效参数
结果,我的脚本无法编译,我无法执行它.
知道我在这里做错了什么,或者我需要改变什么才能在执行输出中看到我的变量的值?
dtb*_*dtb 20
IDTSComponentEvents.FireInformation的最后一个参数是a ref bool,而不是a bool.
因此,您需要将引用传递给类型的变量bool而不是bool值:
bool fireAgain = true;
Dts.Events.FireInformation(..., ref fireAgain);
Run Code Online (Sandbox Code Playgroud)
Fer*_*ndo 10
你需要ref关键字:
bool b = true;
Dts.Events.FireInformation(99, "test", "Make this event appear!", "", 0, ref b);
Run Code Online (Sandbox Code Playgroud)