-1

我在 silverlight 中使用 Out of Browser 应用程序。

我在使用下面提到的代码加载 xml 文件时遇到问题。

string contentUri = Application.Current.Host.Source
            .AbsoluteUri;
        var contentUri1 = contentUri.Substring(0, contentUri.LastIndexOf("/")) + "/Hello1.xml";

        WebClient wc = new WebClient();
        wc.OpenReadCompleted+=(open,read)=>
        {


            string content;
            using (StreamReader reader = new StreamReader(read.Result,Encoding.Unicode))
            {
                byte[] m_Bytes = ReadToEnd(read.Result);
                string s = Encoding.UTF8.GetString(m_Bytes, 0, m_Bytes.Length);
            }

        };
        wc.DownloadProgressChanged
            += (chang,dh)=>
          {

            };
        wc.OpenReadAsync(new Uri(contentUri));

我的 xml 文件包含在哪里

<Root>
<element>FirstElement</element>
</Root>

我得到了垃圾值作为输出,任何人都可以帮助我如何下载原始 xml 内容?

4

1 回答 1

1

当您在 Out-Of-Browser 模式下调用 webclient 调用时,它假设您已经创建了 RootVisual,因为 webclient 显然将在其 Dispatcher 上运行。如果没有,你最终没有来自服务器的响应,奇怪的是,甚至没有抛出异常!

无论如何,杰里米的这篇文章解释了细节:

http://cshaperimage.jeremylikness.com/2010/05/webclient-and-deploymentcatalog-gotchas.html

于 2013-08-08T02:10:41.437 回答