-
-
Notifications
You must be signed in to change notification settings - Fork 486
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in 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: