如何将所有TableAdapter从一个数据集复制到另一个数据集中

本文关键字:数据集 一个 复制 集中 数据 另一个 TableAdapter | 更新日期: 2023-09-27 18:26:57

我的C#项目中有一个数据集(DataSet1),其中包含许多表和大约80个自定义TableAdapters。我有一个与DataSet1具有相同表和结构的DataSet2。在数据集编辑器中,我希望能够将所有自定义表适配器从DataSet1复制到DataSet2。我可以在XML编辑器中打开.xsd并尝试手动编辑它,但使用80多个TableAdapters会变得一团糟。

我为什么要这么做?因为我的DataSet1坏了(大问题,类似于这里和这里讨论的问题),所以我从头开始重新创建它。我需要一种将80个TableAdapters快速添加到新数据集中的方法。

如何将所有TableAdapter从一个数据集复制到另一个数据集中

您尝试过简单地copy & paste all吗?

在第二个DataSet的设计器中,按Ctrl+A,然后按Ctrl+C,最后按<kbd:Ctrl+V>

这应该正常工作。

正如Tim所建议的,TableAdapters的批量复制似乎只能通过将表和TableAdapters一起复制来完成。

出于兴趣,修复损坏的.xsd DataSet/Connection字符串问题的过程是:

  • 创建新的数据集
  • 将新数据集配置为使用现有连接字符串从数据库中提取表
  • 从此新数据集中删除这些表,保留为空
  • 全选并从旧数据集中复制(所有表、TableAdapters、关系)
  • 粘贴到新数据集中

此过程为新数据集留下了一个良好的连接字符串(以及未损坏的.xsd文件),并维护了最初在第一个数据集中创建的所有自定义TableAdapters。