我像这样使用XmlDataSource
:
<asp:XmlDataSource ID="xmlDataSource1" runat="Server" DataFile="https://myurl.xml" ></asp:XmlDataSource>
作为rotater
控件的数据源。
但我一直得到以下例外:
https://myurl.xml不是有效的虚拟路径。
虽然我在外部尝试了链接,但是有一个xml文件
答案 0 :(得分:5)
忽略我之前的回答。显然,XmlDataSource
不喜欢https网址作为DataFile
:
// works
xmlDataSource1.DataFile = "http://code.google.com/feeds/p/google-code-prettify/svnchanges/basic";
// does not work
xmlDataSource1.DataFile = "https://code.google.com/feeds/p/google-code-prettify/svnchanges/basic";
编写一些额外的代码行,从https源下载XML,如:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://code.google.com/feeds/p/google-code-prettify/svnchanges/basic");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
string str = reader.ReadToEnd();
// save it or set it as the .Data property of XmlDataSource