我正在尋找在我的MVC應用程序中將數據導出到Excel的各種方法。在MVC應用程序中將數據導出到Excel
許多庫需要將數據存儲在DataTable中。
我將我的數據傳遞到模型以從視圖進行訪問。看起來你不能將這個模型傳遞迴控制器。
如果JavaScript不是作爲html表格導出,而是作爲純粹的Excel文件導出,那麼JavaScript是一個選項。
目前,我打電話將再次運行查詢,建立一個字符串,並使用System.IO.File.WriteAllText將輸出文件的功能。我不喜歡這種方式,因爲我必須再次調用數據庫來運行查詢(我已經擁有View中模型中需要的所有數據),並且路徑是硬編碼的,我希望Save Dialog彈出向上。
有沒有更好的方法來做到這一點?
我想下面的兩種方法真的很喜歡一個:
- 找到一個「絕招」通過從視圖返回到控制器的數據,可能的TempData可以在視圖莫名其妙使用?
的JavaScript會產生一個純粹的Excel格式(.xlsx)文件
List<type> record = GetRecords(); StringBuilder sb = new StringBuilder(); sb.AppendLine("Data 1, Data 2, Data 3, Data 4"); foreach (var item in record) { sb.AppendFormat("{0},{1},{2},{3},{4}\n", item.1, item.2, item.3, item.4); } System.IO.File.WriteAllText("myfile.csv", sb.ToString());
js-xlsx(https://github.com/SheetJS/js-xlsx)是可以生成純xlsx文件的JavaScript庫。這會幫助你嗎? – wwv
我結束了以下。謝謝 – Unrecognized