2014-04-16 23 views
0

我正在使用下面的代碼來綁定來自我電腦中XML文件的數據。使用本地PC文件路徑時它工作正常,但是當我將XML文件路徑的位置更改爲列出的URL below時。它根本不起作用。我在我的onedrive中公開了這個xml文件,但仍然沒有工作。我是否需要下載該文件,然後閱讀XML?FilePath作爲URL,Visual Basic桌面應用程序

非常感謝,

Imports System 
Imports System.IO 
Imports System.Net 
Imports System.Xml 

Public Class NasgoLive 

Private Sub RefreshButton_Click(sender As Object, e As EventArgs) Handles RefreshButton.Click, RefreshButton.Click 

    MessageBox.Show("Done") 

    Me.BackColor = Color.FloralWhite 

    Dim filePath As String = "Complete path where you saved the XML" 
    AuthorsDataSet.ReadXml("https://onedrive.live.com/? cid=42FE4354E1EDA2AE&id=42FE4354E1EDA2AE%21674") 

    alliancehorizonvalue.DataSource = AuthorsDataSet 
    alliancehorizonvalue.DataMember = "alliancehorizon" 
    arcticovalue.DataSource = AuthorsDataSet 
    arcticovalue.DataMember = "arctico" 

回答

0

您需要先下載該文件。 DataSet.ReadXml只支持一個文件名,而不是url。

你可以下載一個 WebClient(未測試)的文件:

byte[] data; 
using (WebClient client = new WebClient()) { 
    data = client.DownloadData("https://onedrive.live.com/?cid=42FE4354E1EDA2AE&id=42FE4354E1EDA2AE!674"); 
} 
File.WriteAllBytes(@"c:\myfile.xml", data); 

編輯: 對於下載你需要使用OneDrive API

+0

對於下載您需要使用OneDrive API,編輯我的答案。 – komaflash

+0

好的,謝謝。但是,如何在DataSet.ReadXML中使用相同的文件? – mpestana

+0

首先您使用OneDriveAPI下載文件。然後它存在於您的本地驅動器上,您可以像以前那樣使用它。 'AuthorsDataSet.ReadXml(「c:\ myfile.xml」);' – komaflash