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

Silverlight体积优化

重新打包XAP文件“越小越好” 我们知道Silverlight的XAP包实质上就是一个标准的ZIP包,包内有一个AppManifest使得他在Silverlgith运行时中可正确的被解析。...但是Visual Studio 2008在做XAP打包时并没有做压缩。 这里我们要做的是Winzip活Winrar将这个XAP解包,然后再做压缩打包,将扩展名改成xap替换原始文件。...将素材放在sl应用外部 在之前方式中我们都是针对一个sl应用做的,但是当你在构建模块话的sl应用时,将素材文件放在Silverlight XAP包的外部效果会更好。...文件,有一个主xap来调用其他的xap做动态的加载....在silverlight中可以用简单的loadingXAP来完成(具体请查看“动态加载XAP文件”),或者使用第三方的框架来完成,比如“Managed Extensibility Framework”、

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

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

    通常解决这个问题的办法是在xap包的下载地址后附加一个随机数,类似http://xxx.com/abc.xap?t=1235817232 之类。...但是这样相当于强制浏览器每次去重新下载xap文件,缓存机制被完全给干掉了,特别是对于一些大型项目,xap通常比较大,每次重新下载,需要较长时间,用户的体验非常差。...注:Version目录下如何编译时不能自动更新Version.txt文件,请检测该文件夹是否有写权限。 自动生成版本号的问题解决了,SL如何使用服务端的这个版本号呢?...4、加载主模块xap包时,用类似http://www.xxx.com/SL_App.xap?...以上思路,不仅仅适用于处理XAP的按需加载,同步也适用于独立存储中的缓存数据,有时候我们会把一些不经常更新的数据以文件形式保存在客户端本地作为数据缓存,同样也会遇到版本更新的问题。

    1K70

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

    默认情况下,如果SL项目引用了一些其它程序集(即通俗意义上的dll文件),在编译打包时,这些dll会全部打包到一个xap文件里,随着引用的dll文件越来越多,xap文件会越来越大。...但是如果多个SL项目都要引用相同的程序集时,这些dll会重复打包进每个xap文件,用户在加载多个xap时,实际上是重复下载了这部分dll文件,带宽使用率太低。...揭密:随便找个解压软件(比如WinRAR,WinZIP,7-ZIP之类),用它打开MySLApp.xap文件,把里面的AppManifest.xaml解压出来,用记事本打开,会看到类似以下内容: <Deployment...但是有一个问题,只有强命名的程序集可以这么做,如果是用户自己开发的类库,默认情况下就算你勾选了这个选项,最终还是会将dll一起打包进xap文件,如何也让自己开发的SL类库使用缓存呢?...可以看到VS已经自动将MyTools.dll打包成了zip文件,然后查看一下MySLApp.xap中的AppManifest.xaml内容 <Deployment xmlns="http://schemas.microsoft.com

    86490

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

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

    81950

    AgileEAS.NET SOA 中间件平台5.2版本下载、配置学习(四):开源的Silverlight运行容器的编译、配置

    EAS.SilverlightClient.Web:AgileEAS.NET SOA中间件平台Silverlight运行容器的入口网站,即功能承载网站,包括一个首页及Silverlight XAP包的部署目录及客户端运行时所需要的配置文件和...XAP包的自动升级配置。     ...接下来我们开始配置Silverlight运行容器的一些参数、以及Silverlight客户端XAP文件的升级配置,这些配置信息记录在项目”EAS.SilverlightClient.Web”的“ClientBin...,而不是工具生成,我们需要把下载到客户端Silverlight环境之中的文件(主要是一些XAP包)以SmartFile配置信息形式记录在这个配置文件之中,需要多次注意的是,客户端会依据这个文件的最后时间进行更新...因为AgileEAS.NET SOA 中间件设置为支持Silverlight的本地存储文件,以缓存XAP包和某些业务数据,我们选择点击“是”,然后重新输入密码进行登录,将会打开系统主界面: ?

    69580

    你应该知道的15个Silverlight诀窍

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

    86860

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

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

    1.1K10

    Silverlight学习笔记:资源的位置

    在 Web 项目中,我们免不了使用一些诸如图片、音频、视频、字体之类的在我们的程序中非可执行的数据文件,习惯称之为资源文件。...在Silverlight中,使用这些资源文件的方法有很多,比如官方的说法: 作为应用程序包中的单个文件。 作为按需检索的单个文件。 作为嵌入应用程序包的程序集中的文件。...对于 Silverlight 来说,我们可以将资源发布到 xap 的包中,也可以部署到其所在的网站,控制这个的一个重要的选项就是我们在 Build 工程时的一个 build action 属性。...资源(Resource):这个build action选项会将文件嵌入项目的程序集中。这个选项意味着,如果你添加了一个视频,那么你生成的xap会比你想象中的要大一些。...ClientBin 或者其他和我们的应用同级的目录中,才能够正常的访问,而此时,我们生成的 xap 又变成了一个小巧的文件包。

    40920
    领券