У меня возникла проблема с выполнением пакета SSIS через приложение asp.net. Я использую C#. каждый раз, когда я запускаю пакет через веб-интерфейс, я думаю, что пакет не утилизирован должным образом до тех пор, пока я не остановлю приложение, пакет не выполнит ... я не могу утилизировать или выгружать пакет ...Проблема при выполнении пакета SSIS через приложение asp.net C#
я geeting ошибки как
'WebDev.WebServer.EXE' (управляемый): Loaded 'C: \ WINDOWS \ сборка \ GAC_32 \ CustomMarshalers \ 2.0.0.0__b03f5f7f11d50a3a \ CustomMarshalers.dll', Пропущенные символы загрузки. Модуль оптимизирован и включен параметр отладчика «Только мой код». Результат выражения "" EXEC "+ @ [Пользователь :: vRowData]" в свойстве "SqlStatementSource" не может быть записан в свойство. Выражение было оценено, но не может быть установлено в свойстве. : Пакет Результаты исполнения: {0}
вот мой код
приложение Application = новый Application(); // Пакет package = app.LoadPackage ("D: \ ChipRewards_WorkingFolder \ ChipRewards \ Codebase \ HeathPlan \ Common \ Trunk \ SSIS Package \ ETL_WorkFlow \ ETL_WorkFlow \ DataImport.dtsx", null); //package.ImportConfigurationFile("D:\ChipRewards_WorkingFolder\ChipRewards\Codebase\HeathPlan\Common\Trunk\SSIS Package \ ETL_WorkFlow \ ETL_WorkFlow \ ETLConfig.dtsConfig ");
using (Package package = app.LoadPackage("D:\\ChipRewards_Test_Environment\\Test\\ETL_WorkFlow\\ETL_WorkFlow\\DataImport.dtsx", null, true))
{
package.ImportConfigurationFile("D:\\ChipRewards_Test_Environment\\Test\\ETL_WorkFlow\\ETL_WorkFlow\\ETLConfig.dtsConfig");
DTSExecResult result = package.Execute();
if (result == Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Failure)
{
foreach (Microsoft.SqlServer.Dts.Runtime.DtsError local_DtsError in package.Errors)
{
Debug.WriteLine("Package Execution results: {0}", local_DtsError.Description.ToString());
}
}
package.Dispose();
}
я не знаю, что происходит ... я был бы очень благодарен, если кто-то может помочь мне решить эту проблему ...
Спасибо, антифлага
Почему вы используете package.Dispose(); внутри используя блок? вы можете установить package = null после использования концов, если это то, что вы имеете в виду – iTSrAVIE