我正在调用第三方对象并将参数传递给调用
目前,在完成通话后,它会提示打开或下载.txt文件。
我的问题是,如何将响应数据捕获到某个内存对象(xml)而不显示提示保存/下载文件,我需要修改即将发布的数据然后打开文件。
如果您知道,请提供示例代码。
THX
答案 0 :(得分:1)
使用WebRequest
创建HTTP请求,然后获取流,然后根据流的内容对流执行某些操作。许多人使用HtmlAgilityPack,如果它是你正在抓取的HTML。相反,如果您从Feed中获取XML,则可以deserialize the XML into an object model。为此,您必须创建自定义类数据类型并告诉编译器如何(反)序列化您的类型(阅读MSDN)。
using System;
using System.IO;
using System.Web;
using System.Net;
public class Test
{
static void Main()
{
WebRequest request = WebRequest.Create(
"http://www.scripts/report.asp?companyname=Google");
try
{
using (WebResponse response = request.GetResponse())
{
Stream recvStream = response.GetResponseStream();
StreamReader sr = new StreamReader(recvStream , Encoding.UTF8);
XmlReader reader = XmlReader.Create(sr);
// Do the stuff mentioned in the MSDN article here
// ...
}
}
catch (WebException e)
{
using (WebResponse response = e.Response)
{
HttpWebResponse httpResponse = (HttpWebResponse) response;
Console.WriteLine("Error code: {0}", httpResponse.StatusCode);
}
}
}
}