4

在基于 Prism 的模块化 Silverlight 应用程序的 localhost 测试期间,XAP 模块下载速度过快,无法感受最终结果。这使得很难看到需要在哪里显示进度、闪屏或其他视觉状态。

在本地开发设置中有意减慢 XAP 模块和其他内容的加载速度的最佳(或最标准)方法是什么?

我一直在添加偶尔的计时器延迟(通过基于代码的故事板),但我更喜欢我可以放置在引擎盖下的东西(比如 Unity 加载器?),以便为所有模块加载和调试构建添加大量延迟只有.

欢迎提出建议*

*注意:我已经调查了“大文件”选项,它对于大型项目是不可行的(并且无法使用非常大的文件创建 XAP 并出现内存不足错误)。该解决方案需要基于代码,并且最好在后台集成以减慢本地主机环境中的模块加载速度。

****注意:为了澄清,我们专门寻求与 Microsoft PRISM 模式和 PRISM/CAL 库兼容的答案。**

4

2 回答 2

0

您可以简单地将大文件(例如视频)添加到您的模块项目中。构建此类项目需要更长的时间,但它们也会更大,因此在本地下载需要更长的时间。当您开始生产时,只需删除大文件即可。

于 2010-08-29T10:50:01.373 回答
0

不要将任何文件添加到您的模块项目中。这会为您的模块添加不必要的回归测试,因为您正在通过扩展不可执行部分来更改模块的布局。您可能不会进行此回归测试,而且,谁知道它是否会导致问题。最好是偏执狂。

相反,提出一个延迟(int 毫秒)过程,您将其传递给回调,该回调具体化您用于检索远程程序集的回调。

换句话说,将程序集资源获取与程序集资源使用解耦。在这两个阶段之间插入任意随机量的等待时间。我还建议记录远程用户获取程序集的实际时间,并将其用于未来的测试点,以便您的 UI 设计师和 QA 团队获得有关用户等待时间的宝贵信息。这将使您能够廉价地模拟最终用户在 QA 环境中的体验。只需确保您的日志包含相关详细信息,例如请求的程序集的大小。

几周前我在 StackOverflow 上提出了一个与此相关的问题,并且不得不处理你提出的问题,所以我相信这是正确的答案,来自经验,而不是聪明。

于 2010-09-07T19:08:04.083 回答