动态加载 Silverlight XAP

发布于 2024-10-15 16:06:22 字数 363 浏览 4 评论 0原文

我有四个 Silverlight 4 应用程序,每个应用程序都在自己的 Visual Studio 项目中,我想为其编写一个“shell”来托管它们,以便它们向用户显示为单个应用程序。为了最大限度地减少下载时间,我将动态下载 XAP 和支持 DLL。所以我最终会得到 5 个应用程序 - shell 和四个子应用程序。现在我的问题是:

我的应用程序都引用了 Telerik 套件,这是一个相当重要的下载。当我构建应用程序时,Telerik DLL 会被压缩到每个 XAP 中(如预期)。因此,即使我动态加载 XAP,Telerik DLL 也会被下载多次,每个 XAP 一次。

那么,如何才能使 Telerik DLL 仅下载一次(例如,通过 Shell)并由所有子应用程序共享?

I have four Silverlight 4 apps, each in their own Visual Studio project, for which I want to write a "shell" to host them so they appear to the user as a single application. To minimize download times, I will download the XAPs and supporting DLLs dynamically. So I will end up with 5 apps - the shell and the four sub-apps. Now my problem:

My apps all reference the Telerik suite, and this is a fairly significant download. When I build my apps, the Telerik DLLs get zipped into each XAP (as expected). So even if I dynamically load the XAPs, the Telerik DLLs will be downloaded multiple times, once for each XAP.

So how do I make it so the Telerik DLLs are downloaded only once (say, by the Shell), and shared by all the sub-applications?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

薔薇婲 2024-10-22 16:06:22

如果您进入各个 Silverlight 项目的“属性”窗口,并选择“Silverlight”选项卡,您将看到“通过使用应用程序库缓存减少 XAP 大小”选项。如果您选择该选项,支持库(在本例中为 Telerik)将被打包成单独的 .zip 文件,可以单独下载。请参阅此处了解更多详细信息,包括有关如何操作的说明为这种行为配置您自己的程序集。 (虽然我没有检查过,但我猜想 Telerik 已经用他们的控件做到了这一点。)

If you go into the Properties window of your various Silverlight projects, and select the "Silverlight" tab, you'll see an option to "Reduce XAP size by using application library caching". If you select that, the support libraries (Telerik, in this case) will get packaged into separate .zip files that can be downloaded separately. See here for more details, including instructions on how to configure your own assemblies for this sort of behavior. (I presume, though I haven't checked, that Telerik has done this with their controls.)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文