ASP.NET MVC 4 Razor :
我已经在这方面工作了一段时间,所以如果我遗漏了一些明显的东西,我深表歉意,但我将非常感谢可以提供的任何帮助。
简而言之,我要做的是使用 C# 从 URI 下载 XML 文件。它应该非常简单,但 URI 导致一个空白页面,其中包含一个下载提示弹出窗口,其中填充了一个动态创建的文件名。
由于其 secret 性,我无法提供 URI,但这是我一直在研究的代码。 (原谅我对这件事的无知,这是我第一次尝试这样的事情)
byte[] data;
using (WebClient Client = new WebClient())
{
data = Client.DownloadData(uriString + fileString);
}
File.WriteAllBytes(dirString + fileString, data);
我也试过:
using (WebClient Client = new WebClient())
{
Client.DownloadFile(uriString + fileString, dirString + fileString);
}
老实说,这段代码对我来说真的不起作用。下载的文件不正确。 XML 文件似乎包含从中下载它们的网页的代码,如果我尝试使用图像之类的东西,图像就会损坏。因此,再次感谢任何帮助。
提前致谢!
最佳答案
您使用的 URI 可能有误。您正在使用打开弹出页面的 URI。弹出页面应该对动态生成的文件执行另一个 GET。
要自动执行此过程,您应该使用 WebRequest 来获取弹出页面的内容。抓取页面内容以获取下载文件的实际 URL。然后使用您编写的代码下载文件。
var request = WebRequest.Create("PopupUrl");
var response = request.GetResponse();
string url = GetUrlFromResponseByRegExOrXMLParsing();
var client = new WebClient();
webClient.DownloadFile(url, filePath);
关于c# - 使用下载弹出窗口自动从 URI 下载 xml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17947605/