我發送一個帶有一些數據的excel文件來插入數據庫。如何在asp.net mvc 5中一次返回一個文件和一些數據
對於每一行我必須驗證數據,如果該行有無效的數據我必須返回只有無效行的文件。
下載,閱讀和返回工作正常,但是當我返回包含無效值的文件時,我必須通過編寫一個告訴用戶下載的文件包含具有無效數據的行的文本來更新模式,所以用戶可以重寫併發回。
我被submiting和形式,並在行動這樣receaving發送文件:
public ActionResult LoadData(HttpPostedFileBase _file)
和返回是這樣的:
Response.Clear();
Response.Buffer = true;
Response.Charset = "";
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment;filename= Colabs.xlsx");
using (var stream = new MemoryStream())
{
xlWorkbookFile.SaveAs(stream);
stream.WriteTo(Response.OutputStream);
Response.Flush();
Response.End();
}
而你的問題是......? –
不僅返回文件,還返回一些可在客戶端讀取的數據。 –
本質上你不能。這不是HTTP的工作原理。你在響應蘋果時會咬一口。這是一個HTML文檔**或**文件下載,從來都沒有。但是,您*可以*返回一個帶文件下載鏈接的HTML文檔,這是一個典型的解決方法。 –