如何在Silverlight中访问xap文件之外的文件

时间:2011-04-20 19:38:24

标签: c# silverlight

我在访问位于xap文件外部的视频文件时遇到了一些麻烦。是否可以使用Application.GetResourceStream()

访问此文件

如果我将test.wmv放在我的xap文件的根目录中,则以下内容按预期工作:

                        Uri uri = new Uri("test.wmv", UriKind.Relative);
                        h.Resource.Stream = Application.GetResourceStream(uri).Stream; 

但是,如果我将test.wmv放在我的xap文件之外,但是在同一目录中,那么我希望以下内容能够正常工作:

                    Uri uri = new Uri("/../test.wmv", UriKind.Relative);
                    h.Resource.Stream = Application.GetResourceStream(uri).Stream; 

但它没有,我最终收到了错误:

  

对象引用未设置为对象的实例

我认为这意味着它无法访问或查找test.wmv

任何人都可以帮我吗?

可能无法使用GetResourceStream()因为它需要相对于xap文件的相对URI。在这种情况下,我可以使用其他什么方法?

MSDN

Silverlight Forums

1 个答案:

答案 0 :(得分:2)

所以你想要创建一个相对于你的xap文件的资源的Uri?这应该可以实现。

new Uri(App.Current.Host.Source, "../test.wmv");