Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.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#_Asp.net_Linq_List_Ienumerable - Fatal编程技术网

C# 如何从列表中仅获取特定字段

C# 如何从列表中仅获取特定字段,c#,asp.net,linq,list,ienumerable,C#,Asp.net,Linq,List,Ienumerable,我有一个IEnumerable的课程对象: IEnumerable<Lesson> filteredLessons 但是我希望返回的列表只包含第一个属性lessonid,而不是所有Lesson属性 如何获取列表特定属性的数据而不是对象?您可以先选择所需的值,如下所示: filteredLessons.Select(l => l.lessonId).ToList(); 如果要使用linq从列表中获取特定的行值,您将获得一个ID列表,请使用以下代码: var name = fr

我有一个IEnumerable的课程对象:

IEnumerable<Lesson> filteredLessons
但是我希望返回的列表只包含第一个属性
lessonid
,而不是所有
Lesson
属性


如何获取列表特定属性的数据而不是对象?

您可以先选择所需的值,如下所示:

filteredLessons.Select(l => l.lessonId).ToList();

如果要使用linq从列表中获取特定的行值,您将获得一个ID列表,请使用以下代码:

var name = from r in objClientList
           where r.ClientCode == Convert.ToInt32(drpClientsInternal.Items[i].Value)
           select r.IsInternalClient;

foreach (bool c in name)
{
    if (c)
    {
        ClientNameInternal = ClientNameInternal + drpClientsInternal.Items[i].Text +", ";
        drpClientsInternal.Items[i].Selected = true;
    }
}

对于如何最好地使此解决方案适用于任何财产,有何建议?
var name = from r in objClientList
           where r.ClientCode == Convert.ToInt32(drpClientsInternal.Items[i].Value)
           select r.IsInternalClient;

foreach (bool c in name)
{
    if (c)
    {
        ClientNameInternal = ClientNameInternal + drpClientsInternal.Items[i].Text +", ";
        drpClientsInternal.Items[i].Selected = true;
    }
}