首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Silverlight:xap包(或本地缓存)下载版本更新的解决思路

在SL开发中,通常会将项目按模块分成多个xap实现按需下载,但是由于浏览器的缓存,就算某个模块代码修改过并重新发布到服务器,如果这个xap已经在浏览器缓存中,实际加载时,仍然有可能调用的是本地缓存,而非最新的版本...通常解决这个问题的办法是在xap包的下载地址后附加一个随机数,类似http://xxx.com/abc.xap?t=1235817232 之类。...但是这样相当于强制浏览器每次去重新下载xap文件,缓存机制被完全给干掉了,特别是对于一些大型项目,xap通常比较大,每次重新下载,需要较长时间,用户的体验非常差。...相对比较科学的方法是用"版本号"来替换"随机数",比如http://xxx.com/abc.xap?v=20101001 每次发布时,更新版本号即可。...4、加载主模块xap包时,用类似http://www.xxx.com/SL_App.xap?

99470
您找到你想要的搜索结果了吗?
是的
没有找到

Silverlight:分包下载及SEO优化方案

一、按模块分包 一般大型的Silverlight应用,都会按模块分解成多个silverlight project,编译后就有多个xap包,然后在需要用到的场景按需加载。...我近期开发的这个项目不需要全站Silverlight,而是aspx混合silverlight,说得更白点,就是把相应的子模块xap包嵌入aspx....这样分包就简单多了:直接用js控制dom元素,修改object元素中的source,动态设置成不同的xap即可实现无刷新的加载不同模块。...(这比网上主流的方式:用WebClient动态下载xap包,最终再反射加载,个人觉得更简单。...当然,这种方式不适用于整站Silverlight的项目) 二、按需反射加载xap中的页面 上面讨论的办法,只是解决了按需加载不同的xap文件,但是如果一个xap中有多个页面,如何确定加载某个xap后,显示其中的哪个页面呢

80850

Silverlight体积优化

重新打包XAP文件“越小越好” 我们知道Silverlight的XAP包实质上就是一个标准的ZIP包,包内有一个AppManifest使得他在Silverlgith运行时中可正确的被解析。...但是Visual Studio 2008在做XAP打包时并没有做压缩。 这里我们要做的是Winzip活Winrar将这个XAP解包,然后再做压缩打包,将扩展名改成xap替换原始文件。...将素材放在sl应用外部 在之前方式中我们都是针对一个sl应用做的,但是当你在构建模块话的sl应用时,将素材文件放在Silverlight XAP包的外部效果会更好。...使用程序集缓存 使用程序集缓存的办法很简单只需要在sl的属性页面,将library Caching设置为true即可 动态加载XAP 在silverlight开发的过程中可以将模块话,分解成多个xap...文件,有一个主xap来调用其他的xap做动态的加载.

91780

Silverlight自定义类库实现应用程序缓存

默认情况下,如果SL项目引用了一些其它程序集(即通俗意义上的dll文件),在编译打包时,这些dll会全部打包到一个xap文件里,随着引用的dll文件越来越多,xap文件会越来越大。...但是如果多个SL项目都要引用相同的程序集时,这些dll会重复打包进每个xap文件,用户在加载多个xap时,实际上是重复下载了这部分dll文件,带宽使用率太低。...为了改善这种情况,SL引用了"应用程序库缓存"的概念,在vs2010的SL项目中,打开SL项目的属性页,会看到一个选项:“通过使用应用程序库缓存减少XAP大小(R)” ?...再稍微唠叨一下:上图中的MySLApp.xap在下载时,怎么知道会去加载System.Runtime.Serialization.Json.zip呢?...步骤3:SL项目引用这个dll(或SL类库),并正确勾选"通过使用应用程序库缓存减少XAP大小(R)”即可 最终在ClientBin目录下,会看到类似下面的输出: ?

84790

为什么我们需要一个新的混合微服务平台

XAP微服务平台是组合单体架构并且具有所有微服务优势的唯一方法。XAP是低延时的分布式微服务平台,由一个机器集群构成为低延时数据访问和极端事务处理来创建一个弹性数据共享数据结构。...6个使用XAP微服务方案的原因 1.粒度控制:使用小粒度的组件来构建微服务是有问题的,有服务管理的噩梦,还有性能问题。XAP的微服务分布式平台是一个较好的实现,它即隔离了服务又提升了性能。...XAP可以异步更新多种通用存储卷,开发这样一个任务对任何想把这个功能集成到他们的微服务架构中是非常轻松的。 ?...只有XAP微服务架构能够可以在一个平台中支持上面的服务,它采用的是一个独特的机制:在系统中使用一种叫做部署单元或者处理单元。XAP的处理单元是用于处理扩展和容错的。处理单元支持Java和.NET。...XAP可以在一个相同的网络中部署多个独立的处理单元或者部署一个有内部依赖的处理单元组。在这个例子中,XAP会组织编排处理单元做到正确的部署,回复和扩展顺序。 ?

1K10

你应该知道的15个Silverlight诀窍

Silverlight的XAP文件其实是更换了后缀名的Zip文件。你可以使用一些外部工具例如7zip,将文件进一步压缩。这些工具还可以打开XAP文件检查项目的内容。 ? 10....如果并不是所有用户都需要某个文件,该文件不应该打包在XAP文件中。每一个反对这个说法的人都会说:“带宽是廉价的”,但是如果你有50到100个图片或者别的二进制文件,那么代价会是高昂的。...总之我只会把所有用户都必须的文件打包在XAP中。 11. 你可以将Silverlight部署在IIS之外的其他服务器上。...在服务器上注册XAP文件处理后,只要客户机上安装了Silverlight插件,就可以访问Silverlight应用程序了。 ? 12. 参加Silverlight技术社区,可以从中学到很多东西。

84160
领券