如何减少silverlight XAP包的尺寸
来源:互联网 发布:windows10网络受限 编辑:程序博客网 时间:2024/05/05 19:47
这次得到了一个做Silverlight应用开发的机会,在发布时遇到 xap 包太大的问题,上网看了半天,最后把微软的这个文档 “如何使用应用程序库缓存” 翻来覆去看了半天,终于搞明白了它说的内容,晕啊,真应了 “会者不难” 这句老话。
最后决定把这个其实很简单的东西总结一下,避免别的新学者浪费时间。
开发场景:
Silverlight Application: 与Web交互, 程序集名:SilverlightApplication10.dll
Silverlight Class Library: 被SilverlightApplication10引用,程序集名:SilverlightClassLibrary1.dll
目标:
编译后的ClientBin中,SilverlightApplication10.xap包中不包含SilverlightClassLibrary1.dll, SilverlightClassLibrary1.dll 以SilverlightClassLibrary1.zip新式单独存在。
OK, 现在说说这核心三部曲:
1. SilverlighApplication10工程属性里”Silverlight”标签下勾上 “Reduce XAP size by using application library caching”
2. 在保存SilverlightClassLibrary1.dll的地方增加一个extmap文件” SilverlightClassLibrary1.extmap.xml”
SilverlightClassLibrary1.extmap.xml 的内容说明
SilverlightClassLibrary1 1.0.0.0 ee6c3f173c1a51b5 SilverlightClassLibrary1.dll
name: SilverlightClassLibrary1 的程序集名字
version: assembly version.
publickeytoken: 打上签名后的public key
没什么太多解释的,微软的文档“如何使用应用程序库缓存” 里说的很清楚了。对于version和publikeytoken如果你拿不准的话,可以用reflector看,简单直接:
另外,extension downloadUri的内容注意别写错了,是 .zip结尾!我有个配置给copy成.dll了,老不成功,以为还需要设置别的配置,在快把我搞死的时候,才发现这儿写错了,唉......
3. SilverlightApplication10 不要引用SilverlightClassLibrary1的工程,要直接引用编译好的SilverlightClassLibrary1.dll
OK,最后结果如图:
清爽的xap包!把它改名成SilverlightApplication10.zip,打开看看:
最后,附上我的测试程序供大家参考:
SilverlightApplication10.rar ( 19.22 K)
- 如何减少silverlight XAP包的尺寸
- 如何减少silverlight XAP包的尺寸
- 跨域下请求Silverlight Xap包引起的问题
- 读取silverlight程序形成的xap包中的文件
- Silverlight 阻止xap包缓存处理
- silverlight/xap如何接收参数(13)
- Silverlight:xap包(或本地缓存)下载版本更新的解决思路
- 如何让VS 自动把 Silverlight 项目生成的 xap 文件部署到指定目录
- 一个XAP中有多个Silverlight控件时如何选择调用
- 在Silverlight中如何访问外部xap文件中UserControl
- Android如何减少压缩包的体积
- 如何减少APK包的大小
- Silverlight 理解.xap文件
- Silverlight实用窍门序列:1.Silverlight读取外部XML加载配置---(使用WebClient读取XAP包同目录下的XML文件))【附带实例源码】
- 如何缩小APK包的尺寸
- 通过压缩png图片的方式减少ipa包的尺寸
- 通过压缩png图片的方式减少ipa包的尺寸
- 通过压缩png图片的方式减少ipa包的尺寸
- 本机上传文件的代码收集
- 条款10: 如果写了operator new就要同时写operator delete (转自effective c++ second edition)
- 给孩子简单快乐的童年
- 视频监控方案的意义
- Android和Linux,Windows Mobile,Symbian的区别
- 如何减少silverlight XAP包的尺寸
- java环境变量配置
- ListView重写Adapter优化上下滚动响应速度
- SMTP、POP3、IMAP协议解释
- windows下面使用libcurl
- 用windows批处理实现批量增量改名
- abator补丁工具 V2.0
- Android里面编写退出主程序的提示代码
- INSTR方法