【问题标题】:One Dataset for each DataTable or one Dataset for all DataTables?每个数据表一个数据集还是所有数据表一个数据集?
【发布时间】:2014-02-21 07:06:09
【问题描述】:

我正在编写一个使用本地数据集的 C# 应用程序。 我有一个用于客户信息的 DataSet 和一个用于 Stocked Items 的 DataSet。 关于性能和文件大小,是否建议仅使用一个 DataSet 与 Customer Infomation 和 Stocked Items DataTables,还是为每个 DataTable 使用单独的 DataSet? 我打算使用数据放入报告中(使用报告查看器)。

【问题讨论】:

  • 取决于您是否需要链接这些表。如果表不相关并且您不需要两者始终保持单独的DataSets,否则将表放在一个数据集中。
  • 我打算用每个数据表中的数据生成一个报告(使用报告查看器)

标签: c# sql winforms dataset local


【解决方案1】:

DataSet 是专为一组数据而构建的。它旨在允许您在表之间创建关系、提供级联和约束。当您一次处理多个表格时,您应该使用数据集将表格分组在一起。如果您不处理多个表格,请去掉DataSet,只需使用DataTable

现在,如果您尝试在本地缓存所有数据,那么将所有表放在 一个 DataSet 中是有意义的,其中数据可以关联起来,一起操作。那么,如果您一起在这些表上进行操作。

更新:根据您对您的意图的评论,所有相关数据都存在于单个 DataSet 中是有意义的。该报告将需要能够知道哪些行是相关的以及以何种方式处理分组等。

【讨论】:

  • 谢谢!有没有办法将来自 2 个数据集的预先存在的数据合并到 1 个数据集中?
  • @user3237403:是的,你会想看看DataTable.Copy 方法将结构和数据复制到另一个。
  • 不管怎样,桌子上没有那么多东西,我可能只是从头开始做,以回忆一下它是如何完成的。谢谢!
  • @user3237403:听起来不错,很高兴能提供帮助!
  • 这也是我的第一个成功的问题,我其他的都被搁置了。
猜你喜欢
  • 2016-09-08
  • 1970-01-01
  • 2011-02-16
  • 1970-01-01
  • 1970-01-01
  • 2018-08-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多