Silverlight程序集缓存巧妙设置 优化用户体验
创始人
2024-07-20 05:11:10
0

  Silverlight中的程序集缓存可以将一些独立的程序集放在XAP包外边并可以缓存在客户端的浏览器中,这样就可以减少程序启动时下载XAP包的时间。默认情况下Silverlight并没有开启程序集缓存,因此需要自己动手开启。

  右键打开项目的属性,并在通过使用应用程库缓存较小XAP大小选项打钩,如图:

 silverlight

  在没选择此项之前编译项目看一下XAP中的DLL,如图:

 silverlight

  重新编译项目,选择显示所有文件然后打开Bin\Debug目录,会看到每一个缓存程序集都有自己的zip文件包。比如,如果使用了System.Windows.Controls.dll,会看到一个System.Windows.Controls.zip的文件,如图:

 silverlight

  这个ZIP包就包含了System.Windows.Controls.dll,如图:

 silverlight

  而原来的XAP包将不在存在此DLL,如图:

 silverlight

  如果使用的是ASP.NET作为测试网站,Visual Studio将会把XAP包和所有的缓存程序集一并拷入ClientBin目录下,如图:

 silverlight

  这是没有使用缓存程序集前的ClientBin目录下的内容,如图:

 silverlight

  使用程序集缓存在***次打开程序时并没有多大的性能改善,因为它还是需要XAP包和其他的ZIP内容一块下载下来。但在用户在第二次打开程序时,因为这些独立的程序集已经被缓存到客户端不用重新下载,这样就提高了用户的访问速度。

  使用技巧:

  1.缓存的程序集和浏览器的缓存有效期相同。如果用户手动清除了缓存,程序集缓存也将同样被清除掉。

  2.用户每次运行程序时,程序都会自动检查程序集是否有***的版本。如果有,则下载并替换原来缓存的程序集。

  3.如果一个程序将程序集下载并缓存在浏览器中,其它使用缓存程序集的程序也可以使用。

  4.程序集缓存在体积大,使用频繁并且不经常改变的程序集上优势会更加明显。对于那些体积小,程序在启动时下载花费时间少的程序集,尽量避免使用这种方法,因为这样在程序部署时会带来麻烦(程序集缓存后会产生多个ZIP包,部署时需要把所有的文件都放在站点下)。

  5.自定义程序集不支持程序集缓存,比如自己创建的某个类库。

【编辑推荐】

  1. 如何部署Silverlight及Web Service
  2. Silverlight开发的一些***实践分享
  3. Silverlight开发的15个***实践

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...