3
我正在尝试获取SSIS包中输出列的lineageId。我使用C#代码遍历SSIS包作为XML文档。LineageID是字符串或整数
在遍历和从包中的节点获取数据时没有问题,但在尝试获取LineageID时遇到问题。
我很多论坛和文章都说SSIS包中生成的LineageId是该特定包的唯一整数值,所以我试图将LineageID转换为整数值。但它似乎是一个字符串值。
请澄清我的疑问。是lineageid STRING还是INT?
如果是Int,请告诉我如何找到它。
foreach (var x in NodeCollection)
{
var outputCollection = x.Elements("outputColumn");
foreach (var output in outputCollection)
{
string Name = output.Attribute("name").Value;
long LineageId = Convert.ToInt64(output.Attribute("lineageId").Value);
}
}
通过与断点 “output.Attribute(” lineageId “)。值” 调试正在返回下列值
“包\ DFT \ SRC.Outputs [OLE DB源输出] .Columns [TYPE] “
如果没有太多的麻烦,您可以上传一个包含您的代码的样本包吗?我试图实现这是SSIS,但我不断收到“输入字符串不是在一个正确的格式。”错误,就像OP一样,我也得到了LineageID字段的字符串值... 我无法获取SSIS 2012中的错误列名... Thx – 007