您好正在开发一个 Windows 应用程序,在该应用程序中我必须调用一个从数据库中读取值并将其转换为 XML 的 aspx 页面。我不知道如何调用一个 aspx 页面并使其返回一个值给调用 Windows 应用程序。我尝试使用 Web 请求方法,它不返回任何内容。请建议我如何执行此操作
问问题
1294 次
1 回答
1
您可以使用 WebClient,如下所示:
这是一个由 HttpModule 生成的站点地图 XML,它拦截对 XML 文件的请求:
WebClient wc = new WebClient();
string smap = wc.DownloadString("http://www.antoniob.com/sitemap.xml");
这是一个返回 XML 的理论 aspx
WebClient wc = new WebClient();
string smap = wc.DownloadString("http://www.somesite.com/GetXml.ashx");
通话没有区别,当然除了地址
在服务器端(asp.net 应用程序),最好使用 ASHX 处理程序,因为它更适合返回 XML,在您的 ASP.NET 应用程序中添加新项目,并选择通用处理程序:
这是 GetXml.ashx 处理程序的代码,它将从 App_Data 文件夹返回示例 XML:
public class GetXml : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/xml";
string xml = File.ReadAllText(context.Server.MapPath("~/App_Data/sample.xml"));
context.Response.Write(xml);
context.Response.End();
}
public bool IsReusable
{
get
{
return false;
}
}
}
于 2012-04-25T12:30:47.670 回答