我一直在使用Silverlight 4和silversprite开发游戏(http://silversprite.codeplex.com/)
此游戏依赖于内容,使用大量音频和图像。我的内容文件夹大约是90 mbs的东西。 因此,我的XAP文件大约为60 MB,在任何用户开始播放之前需要花5分钟从网站下载。
我正在使用Visual Web Developer 2010来创建我的站点并加载XAP。有没有办法我可以从我的XAP中取出内容并将其放入我的ASP.net站点项目中?或者可能将我的内容文件上传到网站的存储空间? 这将使我的XAP文件下载速度更快。
有人有建议吗? 谢谢!
答案 0 :(得分:4)
是的,在您的XAP中仅包含初始屏幕所需的内容。将您需要的其他内容放在其他XAP中(如果您需要并理解清单xml)或只是普通的zip文件。也许每个“级别”或其他任何一个Zip。
您可以使用WebClient
下载Zip,然后使用StreamResourceInfo
和Application.GetResourceStream
访问zip文件中的内容。
这个blog虽然现在有点老化但仍然带有基本的想法,并且仍然是当前使用的技术。
答案 1 :(得分:3)
Absolutley称为Application Library Caching。我非常成功地使用它,现在它是一个标准的操作程序,特别好的是它的资源组件应用程序。
直接来自msdn ...
资源文件通常是应用程序使用的任何非可执行数据文件,例如图像,音频和视频文件。资源文件在某些上下文中也可以具有特定含义。例如,在应用程序本地化的上下文中,资源文件引用.resx文件,您可以在本地化的附属程序集中部署这些文件。
继续提供一些非常有用的信息
使用Silverlight,您可以部署 资源文件有以下几种:
•作为个人文件 申请包。
•作为您检索的单个文件 按需。
•作为嵌入在程序集中的文件 申请包。
•作为嵌入在程序集中的文件 外部库包。
•作为嵌入在程序集中的文件 您可以按需检索。
这是其他答案中的建议