2010-05-25 88 views
5

在ASP.NET MVC中,我有一个数据库表。我想在某个视图页上有一个按钮,如果某个用户单击了该按钮,我的应用程序将生成包含数据库中所有行的XML文件。然后将包含XML的文件发送到客户端,以便用户可以看到下载弹出窗口。如何在ASP.NET MVC中将XML文件发送到客户端

同样我想让用户上传一个XML文件,其内容将被添加到数据库中。

让用户上传和下载文件的最简单方法是什么?

感谢所有的答案

编辑: 这是我的方法:

public FileContentResult Download() { 
     if(model.Series.Count() < 1) { 
      byte[] content = new byte[0]; 
      return new FileContentResult(content, "Series"); 
     } 
     XmlSerializer serializer = new XmlSerializer(model.Series.FirstOrDefault().GetType()); 

     MemoryStream xmlStream = new MemoryStream(); 
     foreach (Series s in model.Series) { 
      serializer.Serialize(xmlStream, s); 
     } 

     byte[] content2 = new byte[xmlStream.Length]; 
     xmlStream.Position = 0; 
     xmlStream.Read(content2, 0, (int) xmlStream.Length); 

     return File(content2, "Series"); 
} 

哪里模型的DataContext。如何这不起作用。当我尝试下载数据我得到这个错误:

XML Parsing Error: junk after document element 
Location: http://localhost:1399/Xml/Download 
Line Number 7, Column 10:</Series><?xml version="1.0"?> 
---------^ 

回答

1

XML文档只能有一个顶层元素。在元素结束之后,你不能拥有任何其他东西。看起来好像在"</Series>"元素后面有“< ?xml version="1.0>",这是无效的。

相关问题