我想将多个相关联的表放在一个dataset中,数据库结构如下:Create Table MasterTable
(
  MasterID Int Identify(1,1),
  Names varchar(10)
)Create Table DetailTable1
(
  ItemID Int Identity(1,1),
  MasterID Int,
  Years  Int ,
  Months Int,
  Names varchar(40),
  Descriptions text
)Create Table DetailTable2
(
  ItemID Int Identity(1,1),
  MasterID Int,
  EndYears int,
  endmonths int,
  Names varchar(40),
  Descriptions text
)  我定义的代码如下:using System;
using System.Data;
using System.Runtime;
using System.Runtime.Serialization;namespace TestApp.Common.Data
{
/// <summary>
/// TestApp 的摘要说明。
/// 应聘人员基本信息及其附加信息。
/// </summary>
[System.ComponentModel.DesignerCategory("Code")]
[SerializableAttribute]
public class TestData:DataSet
{
public String MASTER_TABLE="MasterTable";
                public String MASTER_ID_FIELD="MasterID";
                public String MASTER_NAMES_FIELD="Names"; public String DETAIL_TABLE1="DetailTable1";
public String DETAIL_TABLE1_ITEM_ID_FIELD="ItemID";
public String DETAIL_TABLE1_YEARS_FIELD="Years";
public String DETAIL_TABLE1_MONTHS_FIELD="Months";
public String DETAIL_TABLE1_NAMES_FIELD="Names";
public String DETAIL_TABLE1_DESCRIPTION_FIELD="Descriptions"; public String DETAIL_TABLE2="DetailTable2";
public String DETAIL_TABLE2_ITEM_ID_FIELD="ItemID";
public String DETAIL_TABLE2_END_YEARS_FIELD="EndYears";
public String DETAIL_TABLE2_END_MONTHS_FIELD="EndMonths";
public String DETAIL_TABLE2_NAMES_FIELD="Names";
public String DETAIL_TABLE2_DESCRIPTION_FIELD="Descriptions";

  public TestData()
{
BuildDataTables();
} private void BuildDataTables()
{
DataTable table;
DataColumnCollection columns;
table=new DataTable(MASTER_TABLE);
columns=table.Columns;
columns.Add(MASTER_ID_FIELD,typeof(System.Int32));
columns.Add(MASTER_NAMES_FIELD,typeof(System.String));
this.Tables.Add(table); table=new DataTable(DETAIL_TABLE1);
columns=table.Columns;
columns.Add(DETAIL_TABLE1_ITEM_ID_FIELD,typeof(System.Int32));
columns.Add(DETAIL_TABLE1_YEARS_FIELD,typeof(System.Int32));
columns.Add(DETAIL_TABLE1_MONTHS_FIELD,typeof(System.Int32));
columns.Add(DETAIL_TABLE1_NAMES_FIELD,typeof(System.String));//执行时错误,提示已经存在此列,但是在DETAIL_TABLE1中不存在重复的啊,为什么会有此错误?
columns.Add(DETAIL_TABLE1_DESCRIPTION_FIELD,typeof(System.String));
this.Tables.Add(table); table=new DataTable(DETAIL_TABLE2);
columns=table.Columns;
columns.Add(DETAIL_TABLE2_ITEM_ID_FIELD,typeof(System.Int32));
columns.Add(DETAIL_TABLE2_END_YEARS_FIELD,typeof(System.Int32));
columns.Add(DETAIL_TABLE2_END_MONTHS_FIELD,typeof(System.Int32));
columns.Add(DETAIL_TABLE2_NAMES_FIELD,typeof(System.String));
columns.Add(DETAIL_TABLE2_DESCRIPTION_FIELD,typeof(System.String));
this.Tables.Add(table);
}
}
}