0

我的 Silverlight 项目使用dane.xml文件,该文件位于ProjectName.Web/Client.Bin/dane.xml

private void ReadXML()
{
    WebClient client1 = new WebClient();
    client1.DownloadStringCompleted += new DownloadStringCompletedEventHandler(client1_DownloadStringCompleted);
    link  = new Uri("dane.xml", UriKind.Relative);
    client1.DownloadStringAsync(filePath);
}

void client1_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    if (e.Error != null)
    {
        MessageBox.Show(e.Error.ToString() + "\n\nURI=" + link.ToString());
        return;
    }
    // (...)
}

当我从 Visual Studio 运行它时,一切正常(调试或不调试就开始)。但现在我想在 VS 之外启动它,所以我跑了ProjectName.Web/ProjectNameTestPage.html- 加载dane.xml文件失败,MessageBox 出现以下错误:

加载文件 dane.xml 时出错

System.Net.WebException:在 WebClient 请求期间发生异常。
---> System.NotSupportedException:无法识别 URI 前缀。
在 System.Net.WebRequest.Create(Uri requestUri)
在 System.Net.WebClient.GetWebRequest(Uri address)
在 System.Net.WebClient.DownloadStringAsync(Uri address, Object userToken)
(...)

URI=dane.xml

我应该怎么做才能解决这个问题?

我已经尝试dane.xml在解决方案资源管理器中设置为 Resource 并创建new Uri("ProjectName;component/dane.xml", UriKind.Relative);,但在 Visual Studio 上运行时失败。

4

1 回答 1

0

问题解决了。我已将我的网站放在 apache 服务器上(复制ProjectName.web文件夹并运行ProjectNameTestPage.html),现在它可以工作了。

于 2012-11-09T09:01:48.543 回答