これが私の問題です。SegmentID という入力で 1 つのパラメーターを受け取る SSIS パッケージがあります。しかし、C#コードから渡すことはできません。これまでのところ2日間検索していますが、ここに私が思いついた解決策がありますが、これは機能するはずですが、機能しません.SSISパッケージはパラメーターを取得する段階で失敗します. 私は一体何を間違っているのですか?
using (SqlConnection con = GetConnection())
{
var integrationServices = new IntegrationServices(con);
if (integrationServices.Catalogs.Contains("SSISDB"))
{
var catalog = integrationServices.Catalogs["SSISDB"];
if (catalog.Folders.Contains("PSO"))
{
var folder = catalog.Folders["PSO"];
if (folder.Projects.Contains("PSO_SSIS"))
{
var project = folder.Projects["PSO_SSIS"];
project.Parameters["SegmentID"].Set(ParameterInfo.ParameterValueType.Literal, segmentID);
if (project.Packages.Contains("Main.dtsx"))
{
var package = project.Packages["Main.dtsx"];
long executionIdentifier = package.Execute(false, null);
return catalog.Executions[executionIdentifier];
}
}
}
}
}