我在VS 2012 Integrated shell (SSDT-BI development)中使用了一个VS 2012 Integrated shell (SSDT-BI development),并且遇到了一个奇怪的错误。
基本上,当我关闭Script Task editor时,我的代码一直在崩溃。它提示我错误:
“错误保存包.‘]>’在字符数据中是不允许的. (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
}发布于 2016-02-12 20:23:55
不能使用]]>或<,因为脚本代码本身在包中保存为XML。
string hi = (char)60+"![CDATA[" + "]]"+ (char)62;https://stackoverflow.com/questions/35371107
复制相似问题