1

我正在为我的应用程序使用 SL5、Telerik SL5 DLL、Prism4.1 和 MEF,并且我已将我的主应用程序拆分为更小的模块。而且,我启用了“通过启用应用程序库缓存来减少 XAP 大小”,这将我的主 xap 文件的大小从 1.5MB 减少到 700 KB(而且,module1.xap 和 module2.xap 文件大小减少到 91 KB 和145 KB)。

问题:当我尝试通过互联网浏览我的应用程序时,我的主 xap 文件会立即下载(它显示 100% 加载在 5 - 10 秒内)但问题是,它需要更多时间(有时,它需要更多比 main.xap 加载所用的时间)从 module1.xap 加载和显示第一个屏幕。我无法找出问题的根本原因。有人可以帮助我解决这个问题吗?

仅供参考,请参阅以下我的 clienbin 内容:

在此处输入图像描述

Main.xap 文件内容:

在此处输入图像描述

Module1.xap 文件内容:

在此处输入图像描述

Module2.xzp 文件内容:

在此处输入图像描述

4

2 回答 2

0

尝试使用Fiddler或您喜欢的浏览器的开发人员工具来查看您的应用程序加载模块和外部部件的内容和时间。

我认为您会遇到延迟,因为当您导航到模块 1 的第一个屏幕时会加载 Telerik 拉链(外部部件)。

为了减少加载时间,您可以使用更好的压缩工具重新压缩所有 .zip 文件。我正在使用带有压缩功能的7zipUltra来减小 zip 文件的大小。

于 2012-11-05T07:39:37.380 回答
0

如果要按顺序加载模块,则应将模块相互依赖。您可以像这样在 modulecatalog.xaml 中执行此操作

<Modularity:ModuleInfo Ref="Main.xap" ModuleName="Main" ModuleType="Project.Main, Module, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" >
        <Modularity:ModuleInfo.DependsOn>
            <sys:String>Module1</sys:String>
        </Modularity:ModuleInfo.DependsOn>

于 2012-12-29T16:00:05.697 回答