问题关于Silverlight以及如何加载应用程序

时间:2009-05-30 16:02:45

标签: silverlight navigation

在Silverlight 3.0中,我们现在可以使用导航框架创建具有多个页面的应用程序,我的问题是:

当我们运行应用程序时,整个应用程序是否会立即加载,或者当我们导航到特定页面时它会被加载?

对于那些想要创建一个非常快速加载的应用程序的人来说,这可能很重要,如果一切都在开始时加载,整个用户体验可能变得像一场噩梦,因为他们必须等待很长时间。 / p>

谢谢。

2 个答案:

答案 0 :(得分:1)

整个执行 XAP被加载到内存中。这不太重要,因为定义页面不是大部分工作。大部分工作是构建页面然后再渲染。在页面导航到之前,不会构建/呈现页面。

如果您的XAP开始变得笨重(导致初始下载需要一些时间),您可以通过使用WebClient延迟加载XAP或程序集来解决该问题。

答案 1 :(得分:1)

嗯......

如果加载了整个XAP,请检查如何存储在浏览器缓存中。

另一方面,您可以执行部分​​加载,如markti所述,如何定义您的视图?使用接口契约,所以你可以推迟加载视图以按需显示(主XAP加载应用程序,加上接口程序集,你将视图分成几个DLL,可能主页加载,其余只是在后台加载)。 / p>

您也可以使用独立存储来缓存Dll(然后您的应用程序将从本地计算机读取Dll)。

http://timheuer.com/blog/archive/2008/09/24/silverlight-isolated-storage-caching.aspx