关于xap的大小和程序集缓存

fanshaoer 2010-08-03 08:22:22
1.关于缩小xap大小,有几种解决方法呢??
2.关于程序集缓存,我不太了解,刚才搜索了一下,这个东西好像不是万能的,而且是不是需要提前配置AppManifest这个文件啊,因为我直接勾上的时候,F5之后出现了如下的错误。



System.Windows.Controls.zip无法下载。。是什么意思啊!

谢谢大家!!!
...全文
78 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
fanshaoer 2010-08-16
  • 打赏
  • 举报
回复
@jv9 谢谢你的热心帮助。我正在学习prism,但是貌似比较麻烦。。

我想先问下有关程序库缓存的问题,就是说我有两个程序,一个是A,一个是A.web(启动项目)

我勾上使用程序库缓存缩小xap之后,在SDK发现确实有相对应dll的aa.extmap.xml文件。。build之后,A.web的clientbin下也正常出现了几个zip文件。。程序也正常显示。但是我有几个菜鸟级别的疑问,求帮助

Q:
1.为什么把启动项目设成A之后,就会有运行时错误,提示无法下载某个dll.是和AppManifest.xml有关么?
2.AppManifest.xml这个文件里的ExtensionPart Source内容是自己写还是自动生成。
3.关于2,即使AppManifest.xml什么也没有,为什么也可以正常压缩?浏览器怎么知道去哪下载zip..

4.最重要的,为什么直接双击bin下的html无法正常启动呢。。之前没使用程序库缓存时可以的啊。

谢谢!
jv9 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 fanshaoer 的回复:]
prism这个东西有人了解么??看了下教程没看懂,是跟程序架构有关么??
[/Quote]

PRISM是一款WPF和Silverlight应用框架,主要针对企业级项目框架搭建准备的。
了解PRISM可以看http://www.silverlightchina.net/html/tips/2010/0526/1196.html
fanshaoer 2010-08-05
  • 打赏
  • 举报
回复
prism这个东西有人了解么??看了下教程没看懂,是跟程序架构有关么??
jv9 2010-08-04
  • 打赏
  • 举报
回复
通常来说XAP中包含编译后的程序集和项目资源文件。缩小XAP可以尝试把资源文件分离,仅包含程序集。

或者可以使用按需加载的功能,on demand loading


1. 按需加载资源文件

如果.xap中包含了庞大的资源文件,会延长下载到客户的时间的,如果这些资源是在需要时才"按需"下载,会带来更好的用户体验。这个实现起来比较简单:通过WebClient 的OpenReadAsync方法下载所需的资源文件,例如图片,下载完成后即可供程序使用了。

2.按需加载Assembly .dll

方法:

1. 通过WebClient 下载Assembly的.dll文件

2. 通过AssemblyPar t实现动态加载Assembly

注意:在调用动态加载Assembly中定义的类的方法上使用[MethodImpl(MethodImplOptions.NoInlining)] ,禁掉JIT method inline, 避免JIT异常

Tip from - http://msdn.microsoft.com/en-us/magazine/dd483293.aspx#id0080004

8,737

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧