我有两个具有相同架构、业务合作伙伴和地址的数据表。我正在尝试以特定格式组合它们,以便导入到另一个系统中。
基本上,我希望输出如下:
- 商业伙伴
- 所有相关地址
- 下一个商业伙伴
- 所有相关地址
这是我正在尝试的最新代码:
var finalDt = BpDt.Clone();
foreach(DataRow BpRow in BpDt.Rows)
{
finalDt.ImportRow(BpRow);
foreach(DataRow AddressRow in AddressDt.Rows)
{
if(Convert.ToString(BpRow["id"]).Equals(Convert.ToString(BpRow["id"])))
finalDt.ImportRow(AddressRow);
}
}
它似乎陷入了无限循环,但我不明白为什么。有没有更好的方法来解决这个问题?
最佳答案
你的做法很糟糕。但如果你坚持走这条路,这应该行得通:
var finalDt = BpDt.Clone();
foreach(DataRow BpRow in BpDt.Rows)
{
finalDt.ImportRow(BpRow);
foreach(DataRow AddressRow in AddressDt.Rows)
{
if(Convert.ToString(BpRow["id"]).Equals(Convert.ToString(AddressRow["id"])))
finalDt.ImportRow(AddressRow);
}
}
关于c# - 从两个创建一个数据表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31323248/