Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/294.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中从字符串集合中检索值#_C#_Asp.net_Collections - Fatal编程技术网

C# 如何在c中从字符串集合中检索值#

C# 如何在c中从字符串集合中检索值#,c#,asp.net,collections,C#,Asp.net,Collections,我有一个集合,其定义如下: public class CompanyModel { public string compnName { get; set; } public string compnAddress { get; set; } public string compnKeyProcesses { get; set; } public string compnStandards { get; set; } } 然后,我从数据表中存储了此集合的名称和地址

我有一个集合,其定义如下:

public class CompanyModel
{
    public string compnName { get; set; }
    public string compnAddress { get; set; }
    public string compnKeyProcesses { get; set; }
    public string compnStandards { get; set; }
}
然后,我从数据表中存储了此集合的名称和地址:

List<CompanyModel> companies = new List<CompanyModel>();
for(int i = 0; i < dt.Rows.Count; i++)
{
    companies.Add(new CompanyModel 
    { 
        compnName =  dt.Rows[i]["companyName"].ToString(),
        compnAddress =  dt.Rows[i]["address"].ToString()
    });
}

但是它会返回空白结果。

最简单的选择是使用LINQ,例如

var names = companies.Select(c => c.compnName);

如何在单个字符串中获取每个公司的名称?你想把他们都干掉吗?预期的输出是什么?你的意思是我最好将compnName声明为字符串数组吗?我不能告诉你。您应该告诉我们预期的输出。dt的输出是一个表1列,有许多不同名称的行。然后它将填充在compnName中。我的目的是一个接一个地获取这个名称,这样如果更合适的话,我可以更改compnName的声明。预期输出是我在for循环中输入compnName的每个公司名称,它不在foreach下,不是吗?那么名称将是一个数组吗?如何一个接一个地访问一个名称?这将生成一个可枚举列表,即您可以运行
foreach
循环的列表。您可以调用
ToArray
来创建
字符串
数组。然后可以通过索引从该数组中获取单个名称。如果您首先只需要一个名称,那么您可以在
选择
之前或之后调用
first
Single
FirstOrDefault
SingleOrDefault
。我应该将其放在哪里,以及在我的情况下如何使用foreach和toarray?你能把它应用到我的代码中吗?就像任何代码一样,你把它放在你需要的地方。正如我已经说过的,该代码将生成一个可枚举的名称列表。你在哪里需要这样一份清单?你把密码放在那里了。至于
ToArray
调用,您只需将其钉在末尾,因此您正在调用
ToArray
以查看
Select
的结果。列表公司不包含“Select”定义。它只有“包含”
var names = companies.Select(c => c.compnName);