gpt4 book ai didi

c# - Epplus:如何使 "LoadFromCollection"在模型中使用 [DisplayFormat()] 属性

转载 作者:行者123 更新时间:2023-11-30 20:39:37 25 4
gpt4 key购买 nike

我有一个 ActionResult(在 MVC 5 网站中)成功使用 Epplus 将数据集导出到 Excel 文档。

在 ActionResult 代码块中,我使用这样的代码将列格式化为短日期。如果没有此代码,日期列将显示为 int 值。

// format date columns as date
worksheet.Column(6).Style.Numberformat.Format =
DateTimeFormatInfo.CurrentInfo.ShortDatePattern;

但是,在模型中,我已经将其定义为一个属性。它在“查看”页面上运行良好,但不会将列格式化为短日期——因此,上面显示的代码。

[Column(TypeName = "date")]
[DisplayName("Exit Date")]
**[DisplayFormat(DataFormatString = "{0:d}")]**
public DateTime ExitDate { get; set; }

为了提供更多上下文,我从一个集合中加载我的工作表。

worksheet.Cells["A5"].LoadFromCollection(Collection: exportQuery, PrintHeaders: true);

有没有一种方法可以扩展 LoadFromCollection,以便工作表不仅加载集合内容,还加载模型中存在的格式化属性?收集了“DisplayName”属性,那么有没有一种方法可以同时收集“DisplayFormat”属性而无需编写单独的代码?

最佳答案

很遗憾,

EPPlus 没有实现对 DisplayFormat 的支持。

该库是开源的,因此您可以在 codeplex 上找到 LoadFromCollection 及其重载的完整实现。

回答你的问题:恐怕你将不得不为此编写单独的代码。

关于c# - Epplus:如何使 "LoadFromCollection"在模型中使用 [DisplayFormat()] 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34209678/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com