【问题标题】:SSIS: Curious: why is the last parameter in FireInformation method a ref bool?SSIS:好奇:为什么 FireInformation 方法中的最后一个参数是 ref bool?
【发布时间】:2010-10-07 14:28:15
【问题描述】:

我目前正在开发一个 SSIS 包,在第 80 次在脚本任务中使用 FireInformation 之后,我想知道:为什么该方法需要您传入一个 ref 布尔值作为其最后一个参数?文档没有说明方法返回后应如何响应该值。我在这里遗漏了什么吗?

【问题讨论】:

    标签: .net ssis class-design


    【解决方案1】:

    运行时引擎能够修改“fireAgain”参数并防止进一步触发事件。为此,运行时必须有权修改变量。只有通过ref传递参数才能做到这一点。

    【讨论】:

    • 你刚刚复活了一个4年前的问题:P
    【解决方案2】:

    是fireAgain参数。

    因为触发事件的成本可能很高,所以运行时引擎提供了一种机制来抑制您不感兴趣的事件。每个事件触发方法都有一个 FireAgain 参数。 如果此变量的值为 false,则在方法返回后,调用者在当前执行期间不会再次触发此事件。 Source

    【讨论】:

    • 这仍然无法解释为什么设计选择使其成为 ref 参数。特别是考虑到由于调用者是调用该方法的人,那么调用者已经知道布尔参数的值。这对我来说毫无意义。
    猜你喜欢
    • 2012-03-11
    • 1970-01-01
    • 2011-01-10
    • 1970-01-01
    • 2019-08-23
    • 2011-09-15
    • 1970-01-01
    • 2020-04-15
    • 2011-01-14
    相关资源
    最近更新 更多