现在的位置: 首页 > 综合 > 正文

[Silverlight入门系列]Prism如何减小模块Module的XAP文件大小提高性能

2011年04月15日 ⁄ 综合 ⁄ 共 549字 ⁄ 字号 评论关闭

Prism构建的Silverlight应用往往有很多模块(Module),每一个模块可以是一个XAP,也可以所有模块是一个XAP,具体拆分方法见MSDN这个帖子。我们来看看编译以后的在ClientBin目录下的XAP文件,也就是要下载到客户端的文件,用WinRAR或者7z等任意压缩文件打开这个XAP文件可以看到:

2011-07-14 10h08_35

有时候你甚至还可以看到你项目中的ReadMe.txt文件居然也在里面!好,现在就来给XAP文件瘦身,减小他的大小:

 

1. 把所有System.Windows.****.dll的属性CopyLocal=False,前提是这个dll已经在Shell中添加了引用,否则的话就会运行时报错啦。

 

copylocal

 

 

2. 把所有的Images/*图片文件的属性BuildAction=None,还要写一个PostBuild脚本自动把图片文件复制到Web项目路径,具体实现方法在我的上一篇博文中已经详细描述了。这样你的图片就不会出现在XAP文件中,也不会以内嵌资源打包到assembly中。注意在Xaml中图片引用路径不能再用资源的方式了。参考我的上一篇博文。

 

3. 把所有的Readme.txt等你不希望放到XAP文件的东东的属性BuildAction=None

 

4. 使用类库缓存,具体参考MSDN这个帖子。

 

完。

抱歉!评论已关闭.