1

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

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

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

4

1 回答 1

1

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

于 2011-02-01T06:13:11.373 回答