所以我有IBindingList
一个 DevExpress 图表的数据源。以这种方式完成,因为图表会随着数据的收集自动更新。
但是,与其创建一个单独的 DataTable 并在其中记录数据,我更愿意使用IBindingList
并将其转换为可以将其和日志记录的结尾批量插入到数据库中的源。
除了 FastMember 包之外,我见过的大多数方法都是递归的,但我无法终生将 an 转换IbindingList
为IEnumerable
.
有没有人对此有任何想法来提高上述效率?
所以我有IBindingList
一个 DevExpress 图表的数据源。以这种方式完成,因为图表会随着数据的收集自动更新。
但是,与其创建一个单独的 DataTable 并在其中记录数据,我更愿意使用IBindingList
并将其转换为可以将其和日志记录的结尾批量插入到数据库中的源。
除了 FastMember 包之外,我见过的大多数方法都是递归的,但我无法终生将 an 转换IbindingList
为IEnumerable
.
有没有人对此有任何想法来提高上述效率?
据微软介绍,IBindingList 支持通过扩展方法直接转换为 DataTable:
CopyToDataTable<T>(IEnumerable<T>)
返回一个包含 DataRow 对象副本的 DataTable,给定一个通用参数 T 为 DataRow 的输入 IEnumerable 对象。
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption)
给定通用参数 T 为 DataRow 的输入 IEnumerable 对象,将 DataRow 对象复制到指定的 DataTable。
CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler)
给定通用参数 T 为 DataRow 的输入 IEnumerable 对象,将 DataRow 对象复制到指定的 DataTable。