我有一些代码将循环DataRows并将一个管道分隔列DataRow分成一个数组,然后分成一个List<string>.
使用LINQ有更好的方法吗?我已经尝试但无处可去!
List<string> allSizes = new List<string>();
foreach (DataRow resultRow in results.Rows)
{
if (resultRow["Sizes"] != DBNull.Value)
{
string[] sizes = resultRow["Sizes"].ToString().Split('|');
foreach (string size in sizes)
{
if (!allSizes.Contains(size))
{
allSizes.Add(size);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
var allSizes = results.Rows.Cast<DataRow>()
.Where(row => row["Sizes"] != DBNull.Value)
.SelectMany(row => row["Sizes"].ToString().Split('|'))
.Distinct()
.ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5438 次 |
| 最近记录: |