0

我们有一项服务,它以指定的时间间隔运行用于数据导入/导出的方法。为了测试这些方法,我们有一个带有单个按钮的小应用程序,当单击该按钮时,实例化导入/导出类并调用所需的方法。没有什么花哨。我想创建一个更健壮的测试应用程序,它可以比服务方法的返回值更实时地从方法接收调试信息。这些方法可能需要几分钟到 30 分钟才能运行完整的导入/导出负载,我想要一些指示已经处理的数据量。

我最初的想法是将这些类包装在某种类型的消息队列类中,然后测试应用程序可以从中读取并显示消息。但是我在这方面仍然是一个 n00b,所以我不知道是否有更好的方法来做我想做的事情。

我们在 .NET 2.0 上使用 VB 开发

4

2 回答 2

2

您可以修改服务方法以在处理期间引发报告状态的事件,然后只需处理代码中的事件以更新状态,这将是最快的方法。

您的生产代码根本无法对事件做任何事情

于 2008-10-16T14:27:58.243 回答
1

也许您可以使用 BackgroundWorker 对象来使用来自您的服务的调试信息来更新您的应用程序。BackgroundWorker 的好处在于它在单独的线程上运行代码,从而使您的表单可用于更新。

使用 BackgroundWorker 将允许您使用来自服务的调试信息更新您的应用程序,从而允许您在进程运行时查看更多信息。在“DoWork”方法中启动流程,当有调试信息要显示时,调用“ProgressChanged”方法。在“ProgressChanged”方法中,您可以使用调试信息更新您的表单。

让我知道这是否有帮助!联合部队

于 2008-10-16T15:25:19.407 回答