我正在使用SL5,Telerik SL5 DLL,Prism4.1& MEF用于我的应用程序,我已将主应用程序拆分为更小的模块。此外,我已启用“通过启用应用程序库缓存来减少XAP大小”,将主xap文件的大小从1.5 MB减少到700 KB(另外,module1.xap& module2.xap文件大小减少到91 KB & 145 KB)。
问题:当我尝试通过互联网浏览我的应用程序时,我的主要xap文件立即被下载(它显示100%在5-10秒内加载)但问题是,它需要花费更多时间(有时候,从main.xap加载花费的时间比从module1.xap加载和显示第一个屏幕需要更多的时间。我无法找出问题的根本原因。有人可以协助我解决这个问题吗?
仅供参考,请参阅下面的我的客户内容:
Main.xap文件内容:
Module1.xap文件内容:
Module2.xzp文件内容:
答案 0 :(得分:0)
尝试使用您最喜欢的浏览器的Fiddler或开发人员工具来查看应用程序加载模块和外部部件的内容和时间。
当您导航到模块1的第一个屏幕时,我认为您得到了延迟,因为Telerik拉链(外部部件)已加载。
为了减少加载时间,您可以使用更好的压缩工具重新压缩所有.zip文件。我使用7zip进行Ultra
压缩以减小zip文件的大小。
答案 1 :(得分: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>