交叉表为啥无端端有一列重复了?这个代码很简单,也用了半年了,突然就出问题

Dim b As new SQLCrossTableBuilder("tjb1","FinanceInfo")
b.ConnectionName ="DB"
b.HGroups.AddDef("FinanceTime", DateGroupEnum.Year, "支付日期_年")
b.HGroups.AddDef("FinanceTime", DateGroupEnum.Month, "支付日期_月")
b.HGroups.AddDef("FinanceTime", DateGroupEnum.Day, "支付日期_日")
b.VGroups.AddDef("FinancePayWay","{0}")
b.Totals.AddExp("总计", "FinanceMoney")
Dim t As Table = Tables("FinanceCrossReport_Table1")
t.DataSource  = b.BuildDataSource
t.AutoSizeCols
其实是因为支付渠道里,有些内容有空格,例如“微信”、“微信 ”
把支付渠道所有内容遍历一次,去掉空格即可。
推荐使用SqlSelect方法,直接加载临时数据到内存,不触发任何表事件
Dim drs As List(Of DataRow) = DataTables("xxx").SQLSelect("")
For Each dr As DataRow In drs
    dr("支付渠道") = CStr(dr("支付渠道")).Trim
    dr.Save
Next防止客户自行录入时,继续发生这种错误,可以在BeforeSaveDataRow里统一做处理
e.DataRow("支付渠道") = CStr(e.DataRow("支付渠道")).Trim