Wix:将一个对象从一个CustomAction方法传递给另一个 - 最佳实践?

时间:2010-08-30 13:20:50

标签: wix custom-action

我对以下场景的最佳实践感兴趣。我有一个CustomAction方法,它访问Web服务并返回一些我用来填充组合框的信息。稍后在另一个CustomAction方法的安装过程中,我需要访问从第一个Web服务调用返回的一些元数据。

在第一种方法中,我创建了一个List,它是CustomAction类的公共静态成员。在我的第二种方法中,当我访问列表时它是空的。

我的想法是使用xaml序列化将其序列化为会话变量,然后在第二种方法中对其进行反序列化。

我离开这里了吗?还有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

我将假设您的第二个自定义操作正在对计算机进行配置更改,并在执行序列中以延迟方式运行而不进行模拟。这意味着它只能访问CustomActionData属性。

这意味着您的第一个自定义操作必须序列化第二个要反序列化的CustomActionData属性。现在CustomActionData是一个Key:Value集合以及你用它做什么(包括一个具有Value的另一个序列化数据类型的Key)完全取决于你。

请务必阅读DTF文档,了解如何使用CustomActionData类型以及Session类的成员。