Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从复杂类型列表中提取字符串列表_C# - Fatal编程技术网

C# 从复杂类型列表中提取字符串列表

C# 从复杂类型列表中提取字符串列表,c#,C#,假设ComplexObject有两个属性:string类型的prop1和int类型的prop2。我想提取一个列表(prop1的列表) 举个例子,也许更清楚 假设您有列表,其中Country是带有Id和Name的复杂对象。我有兴趣从countryList中提取一个包含所有名字的名字列表 我知道我可以做一些事情,比如: List<string> nameList = new List<string>(); foreach (v

假设ComplexObject有两个属性:string类型的prop1和int类型的prop2。我想提取一个
列表
(prop1的列表)

举个例子,也许更清楚

假设您有
列表
,其中Country是带有Id和Name的复杂对象。我有兴趣从countryList中提取一个包含所有名字的名字列表

我知道我可以做一些事情,比如:

            List<string> nameList = new List<string>();

            foreach (var country in countryList)
            {
                nameList.Add(country.Name);
            }
List nameList=新列表();
foreach(国家列表中的var国家)
{
名称列表。添加(国家/地区名称);
}
…但我想知道是否有一种更简单、更快的方法从countryList中提取姓名列表。也许是兰姆达什么的

还可以很容易地将该字符串列表转换为
数据表


谢谢。

这是将结果枚举转换为列表的LINQ select的常见用例。做起来比说起来容易:

var nameList = countryList.Select(c => c.Name).ToList();

到DataTable的转换并不是那么容易打包的。那个

这是LINQ select将结果枚举转换为列表的常见用例。做起来比说起来容易:

var nameList = countryList.Select(c => c.Name).ToList();
到DataTable的转换并不是那么容易打包的。那个

使用LINQ:

var names = countryList.Select(c => c.Name).ToList();
使用LINQ:

var names = countryList.Select(c => c.Name).ToList();

视情况而定。。你在用数据表做什么?如果没有DataTable.Dependes,可能会有更简单的方法。。你在用数据表做什么?没有DataTable可能会有更简单的方法。