-
-
Notifications
You must be signed in to change notification settings - Fork 486
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
导出存在BUG #179
Comments
请问您是否指定format?
您能否向我们提供实体文件吗? |
是的,实体属性指定Format. 摘取部分如下: |
列数过多时出现的问题目前还未仔细研究,研究定位问题后一并发出来 |
@wuyajungo 列的顺序是可以指定的,有个索引的属性。 |
`/// /// 显示名称 /// public string DisplayName { set; get; }
导出的特性就这些把。没看到有索引?导入倒是有索引 |
/// <summary>
/// Excel导出特性
/// </summary>
public class ExcelExporterAttribute : ExporterAttribute
{
/// <summary>
/// 输出类型
/// </summary>
public ExcelOutputTypes ExcelOutputType { get; set; } = ExcelOutputTypes.DataTable;
/// <summary>
/// 自动居中(设置后为全局居中显示)
/// </summary>
public bool AutoCenter { get; set; }
/// <summary>
/// 表头位置
/// </summary>
public int HeaderRowIndex { get; set; } = 1;
} |
@xin-lai /// 用于显示,导入的AOI内层实体类 /// [ExcelImporter(IsLabelingError = true)] [ExcelExporter(Name = "AOI内层", TableStyle = "Medium4")] [Serializable] public class F5QualityData_AOI_IN_Dto { [ImporterHeader(IsIgnore = true)] [ExporterHeader(IsIgnore = true)] public long Id { get; set; } /// /// 用于页面显示的唯一ID /// [ImporterHeader(IsIgnore = true)] [ExporterHeader(IsIgnore = true)] public string UniqueId{ get; set; } /// /// 用于页面使用,是否存在子节点 /// [ImporterHeader(IsIgnore = true)] [ExporterHeader(IsIgnore = true)] public bool HasChildren { get; set; } /// /// 日期 /// [ImporterHeader(Name = "日期")] [Required(ErrorMessage = "日期不能为空")] [ExporterHeader(DisplayName = "日期", Format = "yyyy-m-d")] public DateTime CheckDate { get; set; } /// /// 员工姓名 /// [ImporterHeader(Name = "员工姓名")] [Required(ErrorMessage = "员工姓名不能为空")] [MaxLength(20, ErrorMessage = "测试治具最大长度20")] [ExporterHeader(DisplayName = "员工姓名")] public string CheckUserName { get; set; }
然后导出来的excel列顺序是这样的。 开路 | 缺口 | 短路 | 曝光不良 | 蚀刻不净 | 残铜毛刺 | 孔内无铜 | 孔内毛刺 | 掉膜 | 线细 | 铜渣 | 针孔 | 撞断线 | 折板 | 孔塞 | 孔偏破 | 多/少孔 | 压痕 | 杂物 | 划伤 | 其它 | 日期 | 员工姓名 | 料号 | 检测总数(PNL) | 排版SET数 | 排版SET总数 | PO | 层别 | 不良数(点) | 报废总数(SET) | 一次直行率(点) | 修补后良率(点) | 判定项 另外,啥时候发布下一个稳定版啊?NUGET上,那个Format的问题等着修复呢 |
@wuyajungo 2.5 已发布 |
@xin-lai |
与导入不同,感觉导出指定ColumnIndex 有些显得多余,理论是列顺序应该是由属性的位置决定的。我们先确定导出Excel列的顺序是否和属性位置一致。 |
@xin-lai |
@wuyajungo 非常感谢。我们来跟进和处理。 |
@wuyajungo 目前考虑在导出这块增加ColumnIndex以支持导出列排序。 |
好的。非常期待发布下一版本 |
@wuyajungo 已发布2.5.1 |
Describe the bug
ExportHelper类下的ParseData函数,
代码行数:633
((IDictionary<string, object>)obj)[propertyInfo.Name] = type.GetProperty(propertyInfo.Name)?.GetValue(dataItem)?.ToString();
数据类型转换时,除bool,枚举外,其他类型均调用ToString()
导致导出的日期,百分比等需要格式化的数据全部为文本,格式化功能失效。
还有一个问题就是我的列数有200多列时,我导出的列顺序跟实体类的属性顺序不一致,目前还没找到问题,是否可以增加列特性用于指定列的排序
以上
The text was updated successfully, but these errors were encountered: