Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.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#_List_Asp.net Mvc 5 - Fatal编程技术网

C# 从数据库中选择一个要放入列表的属性值

C# 从数据库中选择一个要放入列表的属性值,c#,list,asp.net-mvc-5,C#,List,Asp.net Mvc 5,如果我有一个名为Names的数据库表,它的属性是:IDint、FirstNamestring、LastNamestring 我想把所有姓氏都塞进一个列表。我该怎么做呢 List<Name> lstLastNames = db.Names.ToList()? foreach(Name n in lstLastNames) { /*help*/ } 这是正确的轨道吗 如果您的Name对象具有LastName属性,并且您正在使用某种类型的ORM来为您处理映射,那么您可以通过Na

如果我有一个名为Names的数据库表,它的属性是:IDint、FirstNamestring、LastNamestring

我想把所有姓氏都塞进一个列表。我该怎么做呢

List<Name> lstLastNames = db.Names.ToList()?

foreach(Name n in lstLastNames)
{
    /*help*/
}
这是正确的轨道吗

如果您的Name对象具有LastName属性,并且您正在使用某种类型的ORM来为您处理映射,那么您可以通过Name.LastName访问它,如下所示,使用语句:

// This will create a List of just your LastName properties
var lastNames = db.Names.Select(n => n.LastName).ToList();
这将比以前的技术效率更高,以前的技术会提取所有数据,然后对其进行过滤,而不是只提取LastName属性

尽管如此,您仍然可以使用基于循环的方法:

// Define a list of strings that will store your names
var lastNames = new List<string>();
// Iterate through your objects and access the LastName property of each
foreach(Name n in db.Names)
{
     lastNames.Add(n.LastName);
}

这将更加有效,因为您只从名称表中检索LastNames。

好的,所以我使用了Select路径。。但是现在我想把这个列表呈现在我的视图中。。所以我尝试了ViewBag.LastNames=LastNames,然后在我的视图中调用该ViewBag,但它显示了列表的文字范围。例如System.Collections.Generic.List'1[System.String]您计划如何在视图中使用该列表?如果您使用它来填充DropDownList帮助器,那么最好使用SelectList。否则,您可能需要尝试通过ViewBag.LastNames作为列表或类似的方式将ViewBag显式转换为列表。不,我不需要它作为下拉列表。。我只需要把它作为一个基本清单放在一边。。这张表不会包含太多的内容。你有没有像在中那样尝试遍历它们?哈哈,太搞笑了。。我在ViewBag.Categories{item}中的视图@foreachvar item中有这个,但是我不知道我需要在item lol之前使用“@”,谢谢!
List<string> lastNames = db.Names.Select(q => q.LastName).ToList();