问题描述
我正在开发使用tablediff和SSIS测试数据库的工具。 我已经创建了使用参数运行tablediff.exe并基于退出代码的脚本,我想设置脚本任务的失败或成功状态。
问题是我的进程返回退出代码2而不是0。在日志中,我可以看到比较的表是相同的,因此进程应该返回退出代码0。
这是我的代码:
string OutputFilePath = "C:\\TableValidation_Results\\";
string OutputFileName = "TableValidation_" + DateTime.Today.ToString("yyyyMdd") + ".TXT";
bool FailTask = false;
Process process = new Process();
processstartinfo startInfo = new processstartinfo();
try
{
startInfo.WindowStyle = ProcessWindowStyle.normal;
startInfo.FileName = FileName;
startInfo.Arguments = "-sourceserver [" + SourceServer.ToString() + "] -sourcedatabase [" + SourceDatabase.ToString() + "] -sourceschema [" + SourceSchema.ToString() + "] -sourcetable [" + SourceTable.ToString() + "] -sourceuser [" + SourceUser.ToString() + "] -sourcepassword ['" + SourcePassword.ToString() + "'] -destinationserver [" + DestServer.ToString() + "] -destinationdatabase [" + DestDatabase.ToString() + "] -destinationschema [" + DestSchema.ToString() + "] -destinationtable [" + DestTable.ToString() + "] -destinationuser [" + DestUser.ToString() + "] -destinationpassword ['" + DestPassword.ToString() + "'] -et Differenc -o " + OutputFilePath.ToString() + OutputFileName.ToString();
process.StartInfo = startInfo;
process.Start();
process.WaitForExit();
if (process.ExitCode == 2 || process.ExitCode == 1)
{
FailTask = true;
}
else
{
FailTask = false;
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)