SSIS 脚本任务中的字符数据中不允许使用“]]>”
本文关键字:数据 任务 脚本 字符 SSIS 不允许 | 更新日期: 2023-09-27 18:34:33
我有一个SSIS Script task
,我在VS 2012 Integrated shell (SSDT-BI development)
中使用,但我遇到了一个奇怪的错误。
基本上,当我关闭Script Task editor
时,我的代码不断崩溃 VS。它提示我错误:
"失败保存包。字符数据中不允许使用>"。 (Microsoft.SqlServer.ManagedDTS(.
还给了我:
"无法显示此任务的编辑器。来自 HRESULT 的异常: 0x80131940 (Microsoft.SqlServerDTSRuntimeWrap(.">
然后VS将崩溃并重新启动。
因此,从错误来看,它似乎没有将我传递的string
链接到一个变量中,我能够使用以下代码(触发完全相同的错误(对其进行验证。
我在这里错过了什么...这是一个错误吗?我确定我只是公然错过了有关此主题的白皮书或内容,但是为什么下面的代码不能在SSIS脚本任务中工作?我知道它会用于 C# 控制台应用程序。
[Microsoft.SqlServer.Dts.Tasks.ScriptTask.SSISScriptTaskEntryPointAttribute]
public partial class ScriptMain : Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase
{
public void Main()
{
// TODO: Add your code here
string hi = "<![CDATA[" + "]]>";
Dts.TaskResult = (int)ScriptResults.Success;
}
#region ScriptResults declaration
enum ScriptResults
{
Success = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Success,
Failure = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Failure
};
#endregion
}
不能
使用]]>
或<
,因为脚本代码本身作为 XML 保存在包中。
string hi = (char)60+"![CDATA[" + "]]"+ (char)62;