2024年终活动

DevExpress控件使用交流,DevExpress中国社区Dev联系电话 联系电话:023-68661681

界面开发控件DevExpress使用教程:Spreadsheet - 如何从数据库保存和加载文档

来源:   发布时间:2020-09-18   浏览:1973次

下载DevExpress v20.1完整版

DevExpress v20.1汉化资源获取

DevExpress Universal Subscription拥有.NET开发需要的所有平台控件,包含600多个UI控件、报表平台、DevExpress Dashboard eXpressApp 框架、适用于 Visual Studio的CodeRush等一系列辅助工具。

屡获大奖的软件开发平台DevExpress Universal 2020年全新首发v20.1,最新版拥有众多新产品和数十个具有高影响力的功能,可为桌面、Web和移动应用提供直观的解决方案,全面解决各种使用场景问题。要体验?点击下载>>

系统背景
  • 平台:ASP.NET MVC
  • 产品:MVC Spreadsheet
实现步骤:

1. 创建一个返回Spreadsheet设置的帮助器类,确保指定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. 在这些设置中处理Saving事件,然后使用SaveCopy方法将Spreadsheet文档保存到byte[] 。然后将结果保存到数据库中:

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现在允许处理Controller中的某些操作,因此可以使用Spreadsheet ribbon的'Save'按钮将文档保存到数据。

15.1:

现在,您可以使用SpreadsheetExtension.Open方法加载文档,并调用SpreadsheetExtension.SaveCopy方法以保存更改。

对于旧版本:

使用ISpreadsheetComponent.LoadDocument加载文档,并使用ISpreadsheetComponent.SaveDocument  - 保存文档。


DevExpress技术交流群2:775869749      欢迎一起进群讨论

获取第一手DevExpress咨询,尽在DevExpress中文网!

慧都高端UI界面开发
本站文章除注明转载外,均为本站原创或翻译
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/1894.html

相关产品: DevExpress Universal Subscription,

扫码咨询
电话咨询
023-68661681
返回
顶部