2011-04-09 51 views
0

我正在创建一个XML文件,当用户转到指定位置时,我想要返回给用户。我曾经想过类似的东西:将XML文件返回给用户

return new FileStream("questions.xml",FileMode.Open); 

这是正确的代码,或者如何返回文件?

回答

2
protected void Button1_Click(object sender, EventArgs e) 
{ 
    Response.Clear(); 
    var file = Server.MapPath("~/questions.xml"); 
    Response.WriteFile(file); 
    Response.ContentType = "text/xml"; 
    Response.AddHeader("Content-Disposition", "attachment; filename=questions.xml"); 
} 
+0

谢谢。当用户下载文件questions.xml时,我可能会遇到这种情况。为了解决这个问题,我该怎么做?有什么解决方案不需要保存文件? – Ryan 2011-04-09 12:04:25

+0

@Ryan,您可以直接从内存中生成并提供文件,而无需将其保存到磁盘。而不是'Response.WriteFile',使用'Response.Write'并传递XML内容或直接写入'Response.OutputStream'。 – 2011-04-09 12:07:31