От людей с http://blogs.msdn.com/b/mattm/archive/2008/12/30/ezapi-alternative-package-creation-api.aspx
Я считаю, что логика, которая автоматически определяет исходные столбцы, встроена в интерфейс диспетчера соединений с плоскими файлами и недоступна через код (что-то, что я определенно хотел быизменить).Из примеров кода, которые у меня есть, похоже, вам нужно определить столбцы вручную.
ex.
pkg.SrcConn.Unicode = (fileFormat == FileFormat.UNICODE);
pkg.SrcConn.ConnectionString = srcFile;
pkg.SrcConn.Columns.Add().DataType = dataType;
pkg.SrcConn.Columns[0].ColumnType = "Delimited";
pkg.SrcConn.ColumnNamesInFirstDataRow = false;
pkg.SrcConn.ColumnDelimiter = ",";
pkg.SrcConn.RowDelimiter = "\r\n";
pkg.SrcConn.TextQualifier = "\"";
pkg.SrcConn.Columns[0].TextQualified = testObject.textQualified;
if (!pkg.Source.OutputColumnExists("col0"))
{
pkg.Source.InsertOutputColumn("col0");
}
pkg.Source.SetOutputColumnDataTypeProperties("col0", dataType, testObject.length, testObject.precision, testObject.scale, testObject.codePage);