界面開發(fā)控件DevExpress使用教程:Spreadsheet - 如何從數(shù)據(jù)庫保存和加載文檔
下載DevExpress v20.1完整版 DevExpress v20.1漢化資源獲取
DevExpress Universal Subscription擁有.NET開發(fā)需要的所有平臺控件,包含600多個(gè)UI控件、報(bào)表平臺、DevExpress Dashboard eXpressApp 框架、適用于 Visual Studio的CodeRush等一系列輔助工具。
屢獲大獎(jiǎng)的軟件開發(fā)平臺DevExpress Universal 2020年全新首發(fā)v20.1,最新版擁有眾多新產(chǎn)品和數(shù)十個(gè)具有高影響力的功能,可為桌面、Web和移動(dòng)應(yīng)用提供直觀的解決方案,全面解決各種使用場景問題。要體驗(yàn)?點(diǎn)擊下載>>
系統(tǒng)背景
- 平臺:ASP.NET MVC
- 產(chǎn)品:MVC Spreadsheet
實(shí)現(xiàn)步驟:
1. 創(chuàng)建一個(gè)返回Spreadsheet設(shè)置的幫助器類,確保指定Name和CallbackRouteValues屬性:
public static class SpreadsheetSettingsHelper { public static SpreadsheetSettings GetSpreadsheetSettings() { SpreadsheetSettings settings = new SpreadsheetSettings(); settings.Name = "SpreadsheetName"; settings.CallbackRouteValues = new { Controller = "Home", Action = "SpreadsheetPartial" }; ... return settings; } }
2. 在這些設(shè)置中處理Saving事件,然后使用SaveCopy方法將Spreadsheet文檔保存到byte[] 。然后將結(jié)果保存到數(shù)據(jù)庫中:
settings.Saving = (s, e) => { byte[] docBytes = SpreadsheetExtension.SaveCopy("SpreadsheetName", DocumentFormat.Xlsx); DataHelper.SaveDocument(docBytes); e.Handled = true; };
3. 在帶有Spreadsheet部分視圖和控制器中使用幫助器:
@Html.DevExpress().Spreadsheet(SpreadsheetSettingsHelper.GetSpreadsheetSettings()).Open(Model.DocumentId, Model.DocumentFormat, () => { return Model.Document; }).GetHtml() public ActionResult SpreadsheetPartial() { // Spreadsheet's CallbackRouteAction method return SpreadsheetExtension.GetCallbackResult(SpreadsheetSettingsHelper.GetSpreadsheetSettings()); }
變更記錄:
16.1:
Spreadsheet現(xiàn)在允許處理Controller中的某些操作,因此可以使用Spreadsheet ribbon的'Save'按鈕將文檔保存到數(shù)據(jù)。
15.1:
現(xiàn)在,您可以使用SpreadsheetExtension.Open方法加載文檔,并調(diào)用SpreadsheetExtension.SaveCopy方法以保存更改。
對于舊版本:
使用ISpreadsheetComponent.LoadDocument加載文檔,并使用ISpreadsheetComponent.SaveDocument - 保存文檔。
DevExpress技術(shù)交流群2:775869749 歡迎一起進(jìn)群討論