C# 将数据表从一个数据集克隆到另一个数据集的数据表
我试图从一个数据集将Datable克隆到另一个数据集的datatable,但它不起作用C# 将数据表从一个数据集克隆到另一个数据集的数据表,c#,datatable,merge,dataset,C#,Datatable,Merge,Dataset,我试图从一个数据集将Datable克隆到另一个数据集的datatable,但它不起作用 Dataset ds = new Dataset(); ds.Tables.Add("key"); ds.Table["key"] = cust.Tables[0].Clone(); // This line is not working 上面的代码给出了下面的错误 Property or indexer 'System.Data.DataTableCollection.this[int]' cann
Dataset ds = new Dataset();
ds.Tables.Add("key");
ds.Table["key"] = cust.Tables[0].Clone(); // This line is not working
上面的代码给出了下面的错误
Property or indexer 'System.Data.DataTableCollection.this[int]' cannot be assigned to — it's read only
cust也是一个数据集。有人能帮我解决这个问题吗您遇到的错误与此类似: 属性或索引器“System.Data.DataTableCollection.this[int]”不能 被分配到--它是只读的 你做对了一次,之后又做错了。 错误告诉您,
cust.Tables[0]
是只读的。无法为其分配任何值,因此必须使用Add()
方法:
DataSet cust = new DataSet(); // create source DataSet
cust.Tables.Add("sourceTable"); //add table to source
DataSet ds = new DataSet(); // create target DataSet
ds.Tables.Add((cust.Tables[0]).Clone()); //clone source table
(ds.Tables[0]).TableName = "keys"; // assign name
您需要将ds.Tables[indexer]包装在parantise()
中,以便编译器将其视为数据表
您应该分配一个DataTable
变量以保持可读性:
var sourceTable = cust.Tables[0];
/* ... */
ds.Tables.Add(sourceTable.Clone());
您得到的错误与此类似: 属性或索引器“System.Data.DataTableCollection.this[int]”不能 被分配到--它是只读的 你做对了一次,之后又做错了。 错误告诉您,
cust.Tables[0]
是只读的。无法为其分配任何值,因此必须使用Add()
方法:
DataSet cust = new DataSet(); // create source DataSet
cust.Tables.Add("sourceTable"); //add table to source
DataSet ds = new DataSet(); // create target DataSet
ds.Tables.Add((cust.Tables[0]).Clone()); //clone source table
(ds.Tables[0]).TableName = "keys"; // assign name
您需要将ds.Tables[indexer]包装在parantise()
中,以便编译器将其视为数据表
您应该分配一个DataTable
变量以保持可读性:
var sourceTable = cust.Tables[0];
/* ... */
ds.Tables.Add(sourceTable.Clone());
“不工作”是什么意思?数据集,但它不工作。如何?@AjayPandya It给出错误属性或索引器“System.Data.DataTableCollection.this[int]”无法分配给-它已读取only@Serv请看上面的评论,我忘了提交答案。只是开着账单。基本上,您忘记了在
ds.Tables[0]
周围添加(
和)
,您必须使用.add()
。详见我的答案。你说的“不工作”是什么意思?数据集,但它不工作。如何?@AjayPandya It给出错误属性或索引器“System.Data.DataTableCollection.this[int]”无法分配给-它已读取only@Serv请看上面的评论,我忘了提交答案。只是开着账单。基本上,您忘记了在ds.Tables[0]
周围添加(
和)
,您必须使用.add()
。详见我的答案。你是个救生员。非常感谢。你是个救生员。谢谢。