我正在尝试删除Excel导出中DateTimeOffset字段的时间部分,但我无法使其工作。
这是我用来显示的字段:
[DataType(DataType.DateTime)]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
public DateTime ProjectStartDate { get; set; }
这是我要映射的字段:
public DateTimeOffset ProjectStartDate { get; set; }
这是我进行映射的地方:
ProjectStartDate = p.ProjectStartDate,
我正在使用 EPPlus 生成导出,如下所示:
ExcelWorksheet wsExpenses = pck.Workbook.Worksheets.Add("Expenses");
wsExpenses.Cells["A1"].LoadFromCollection(expenses, true);
wsExpenses.Column(5).Style.Numberformat.Format = DateTimeFormatInfo.CurrentInfo.ShortDatePattern;
想通了,不得不在映射中将其拆开:
ProjectStartDate = DbFunctions.CreateDateTime(p.ProjectStartDate.Year, p.ProjectStartDate.Month, p.ProjectStartDate.Day,
p.ProjectStartDate.Hour, p.ProjectStartDate.Minute, p.ProjectStartDate.Second),