C#数据表映射值
步骤1: 结果在C#数据表映射值,c#,datagridview,datatable,C#,Datagridview,Datatable,步骤1: 结果在dsMaindstaset中得到36个数据表 步骤2: 动态创建36DataGridView以显示所有datatable。 它导致一些DataGridView有表但没有数据。有些栏目不见了。 原因是这些列是自动生成的映射列。它的列名类似于TabelName\u Id 步骤3: DataSet dsMain = new DataSet(); dsMain.ReadXml(my xml path); for(int index=0;indexColumns(Child\u Id、C
dsMain
dstaset中得到36个数据表
步骤2:
动态创建36DataGridView
以显示所有datatable。
它导致一些DataGridView
有表但没有数据。有些栏目不见了。
原因是这些列是自动生成的映射列。它的列名类似于TabelName\u Id
步骤3:
DataSet dsMain = new DataSet();
dsMain.ReadXml(my xml path);
for(int index=0;index
现在该列是可见的。但我的问题是,我无法获得自动生成的父列
例如:
表1:父项->列(父项Id、列1、列2、列3)
表2:Child->Columns(Child\u Id、Col1、Col2、Col3、Parent\u Id)
在执行步骤3之后,我能够在子表中看到子\u Id,但在子表中看不到父\u Id
请帮我摆脱这一切
我的示例xml
for (int index = 0; index < ds1.Tables.Count; index++)
{
DataTable dtnew = ds1.Tables[index].Copy();
for (int ColCount = 0; ColCount < dtnew.Columns.Count; ColCount++)
{
if (dtnew.Columns[0].ColumnMapping == MappingType.Hidden)
{
dtnew.Columns[0].ColumnMapping = MappingType.Element;
}
}
}
在for循环中,索引始终为0。你是想用ColCount吗
<Parent value="25">
<Child>
<Inner></Inner>
</Child>
</Parent>
for(int ColCount=0;ColCount
上述更改对您的结果有什么影响?如果您仍然看到父/子问题,我们可以进一步查看
for (int ColCount = 0; ColCount < dtnew.Columns.Count; ColCount++)
{
if (dtnew.Columns[ColCount].ColumnMapping == MappingType.Hidden)
{
dtnew.Columns[ColCount].ColumnMapping = MappingType.Element;
}
}