Silverlight 3 Reduce XAP size by using application library caching 应用, 分包下载(转载)

Silverlight 3 Reduce XAP size by using application library caching 应用, 分包下载(转载),第1张

概述  Silverlight 3 Reduce XAP size by using application library caching 应用, 分包下载 最早使用 IsolatedStorageFile 类缓存 Silverlight 程序. 以便下次打开速度变快.  某天偶尔发现 VS 的 SL 项目属性中. 有此选项. , 于是上网找找资料. 做了个例子试试. 结果很明显. 400多k 的 @H_404_0@ @H_404_0@   Silverlight 3 Reduce XAP size by using application library caching 应用,分包下载

最早使用 IsolatedStoragefile 类缓存 Silverlight 程序. 以便下次打开速度变快.  某天偶尔发现 VS 的 SL 项目属性中. 有此选项.

,于是上网找找资料. 做了个例子试试. 结果很明显. 400多k 的 xap 文件 被分离成多个. 最后的 xap 文件只有14k 大小.

 

特将此 demo 的制作过程记录下来,以备查阅.

 

1. 项目结构如下:

 

2. 首先编译. 查看生成的 Xap 文件大小.

  452KB.

3. 打开 PEMS.Sl.UI  SL 项目的属性页面. 将

选中.

4. 编译解决方案. 查看新的结果.

生成后. Navigation. Controls. linq 三个动态链接库被单独打包为 zip格式. 存放与 ClIEntBin 下. 这样. 客户端在使用到的时候. SL 会为你自动下载.

由于我的 PEMS.Sl.UI 项目使用到了 PEMS.Sl.Controls 与 PEMS.Common.Model 项目. 我也需要让这两个项目变得与 Navigation. Controls. linq 它们相同. 下面详细说明.

改造 PEMS.Sl.Controls 与 PEMS.Common.Model 项目.

1. 将 PEMS.Sl.Controls 与 PEMS.Common.Model 它们生成为强类型动态链接库.

1. 使用 VS 工具 sn 产生key.

sn –k key.snk

sn –p key.snk key.public.snk

sn –t key.public.snk  查看到的 public token 记下. 稍后有重要作用

2. 在 PEMS.Sl.Controls 项目属性中产生一个key.

3. 在 AssemblyInfo.cs 文件中添加 [assembly: AssemblyKeyfile("key.public.snl")]

 

 

4. 在项目中创建一个 Assemblyname.extmap.xml 文件. 我这里叫做 PEMS.Sl.Controls.extmap.xml

此文件内容为:

 

<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--> 1  <? xml version="1.0" ?>
2  < manifest xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"
3            xmlns:xsd ="http://www.w3.org/2001/XMLSchema" >
4    < assembly >
5      < name > PEMS.Sl.Controls </ name >
6      < version > 1.0.0.0 </ version >
7      < publickeytoken > 55a4a48c2765ae41 </ publickeytoken >
8      < relpath > PEMS.Sl.Controls.dll </ relpath >
9      < extension downloadUri ="PEMS.Sl.Controls.zip"   />
10    </ assembly >
11 
12  </ manifest >

在你的项目中替换相关的值就可以了. 更改此 XML 文件的属性. 更改为总是拷贝至输出目录

PEMS.Common.Model 同 PEMS.Sl.Controls 项目相同设置.

现在重新编译试试看.

PMES.Common.Model 同 PEMS.Sl.Controls 都被打成 zip 包了.

现在看看 PEMS.Sl.UI.xap 多大.

 

转载出处:http://www.cnblogs.com/hackerttao/archive/2009/10/16/1584537.html

@H_404_0@ 总结

以上是内存溢出为你收集整理的Silverlight 3 Reduce XAP size by using application library caching 应用, 分包下载(转载)全部内容,希望文章能够帮你解决Silverlight 3 Reduce XAP size by using application library caching 应用, 分包下载(转载)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1072244.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存