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

C# 如何在Silverlight中访问xap文件之外的文件,c#,silverlight,C#,Silverlight,我在访问xap文件正外部的视频文件时遇到一些问题。是否可以使用Application.GetResourceStream()访问此文件 如果我将test.wmv放在xap文件的根目录中,那么以下操作将按预期工作: Uri uri = new Uri("test.wmv", UriKind.Relative); h.Resource.Stream = Application.GetResourceStr

我在访问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。在这种情况下,我还可以使用什么方法


那么您想创建一个相对于xap文件的资源的Uri?这应该可以做到这一点

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

这看起来很有希望,但它说:预期的相对URI,发现绝对值。运行此代码时是否删除了UriKind.relative?是的,我确实删除了它。我需要它吗?不-它应该和我贴的一模一样-你是不是碰巧保留了你的起始斜杠?如果是,杀了它。它应该是../test.wmv而不是/test.wmv