2010-01-26 50 views
0

我有一个小的解决方案,我提供给几个人。该解决方案包含一个现有的SsisPackage(default.dtsx)。我根据应用程序中的一些设置对其进行修改,以便为将数据从数据源传输到数据集市做好准备。我添加一个序列容器,添加一个foreachloop并添加一个dadtaflowtask。每一个都被添加(我知道我可以在包资源管理器中看到它们),并且该包可以毫无问题地执行。从C#修改我的SQL 2008 SSIS包使修改不可见

我的问题是,当我看着我的包我看不到我添加的元素,它们是不可见的,它们存在于xmla中,并且在包中可见。任何人都可以得到一个可能的解决方案 - 这使得接收开发人员几乎无法维护这个软件包。

回答

0

编辑/解决方案:留给后人,我将记录我的发现:-)

我一直conparing底层的XML结构,所以这里谈到找到这个解决方案。这个问题是由于我修改已经创建的软件包。在BIDS中首次制作包时,信息被保存在名为<的xml标签中 - 所有元素都使用xmla文件中的编码xml编写其布局。

当我通过C#去修改包并添加新元素时,布局信息不会更新!因此,当软件包被加载到BIDS中进行修改时,BIDS认识到有些布局信息可用,因此它将使用此信息来布局整个软件包。这意味着虽然我们没有关于我们添加的元素的布局信息,但它们并没有布局。

我的下一步是调查删除布局信息 - 然后程序包将以默认方式布置程序包。我将调查如何使用API​​(第一优先级)删除它,否则我将不得不打开XML /文本文件并进行手动删除(希望我会避免这种情况)。

享受!