3

我有名为 MyApp 的 Silverlight 应用程序。在启动期间 MyApp 使用以下代码加载 MyApp.Main.xap 模块:

WebClient wc = new WebClient();
wc.OpenReadCompleted += new OpenReadCompletedEventHandler(onMainModuleLoaded);
Uri uri = new Uri("MyApp.Main.xap", UriKind.Relative);
wc.OpenReadAsync(uri);

有用。在 MyApp.Main 我想加载另一个 xap 文件 MyApp.Billing.xap,所以我写的和上面一样

WebClient wc = new WebClient();
wc.OpenReadCompleted += new OpenReadCompletedEventHandler(onBillingModuleLoaded);
Uri uri = new Uri("MyApp.Billing.xap", UriKind.Relative);
wc.OpenReadAsync(uri);

但它会抛出一个错误,说找不到文件。MyApp.Billing.xap 文件位于 ClientBin 文件夹中,我可以通过浏览器中的绝对路径直接下载它。如果我尝试不是从 MyApp.Main 内部,而是从 MyApp 内部(而不是 MyAPp.Main.xap)下载 MyApp.Billing.xap,它也可以正常工作。可能是什么问题?

4

1 回答 1

0

通过使用各种属性Application.Current.Host.Source来组合一个完整的(绝对)uri,而不是尝试使用相对的 uri(毕竟,它与什么相关?),看看您是否取得了更大的成功。

于 2010-05-06T07:05:03.333 回答