我有一个包含 3 列的数据表。我想对第 2 列行值一一执行拆分操作,并从拆分的输出创建新行。这个场景有 Linq
方法语法吗?
{
Col1 UserID RNo
ABC FName1.SName1 10
PQR FName2.SName2 20
XYZ FName3.SName3 30
}
期望的输出
{
Col1 UserID RNo
ABC FName1 10
ABC SName1 10
PQR FName2 20
PQR SName2 20
XYZ FName3 30
XYZ SName3 30
}
最佳答案
您可以从这里得到答案:"LINQ to separate column value of a row to different rows in .net "
在您的情况下,考虑具有三个属性的用户类,您的 LINQ 将是:
LINQ 查询
List<User> result = uList.SelectMany(item => item.UserId
.Split('.')
.Select(singleUserId => new User
{
Name = item.Name,
UserId = singleUserId,
RollNo = item.RollNo
})).ToList();
输出
Name UserId RollNo
ABC FName1 10
ABC SName1 10
PQR FName2 20
PQR SName2 20
XYZ FName3 30
XYZ SName3 30
我希望这会有所帮助..
关于c# - 在数据表中拆分并创建新行的场景?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58486531/