首页 > 解决方案 > c# 如何从列表中的记录中只获取一个值?

问题描述

我有两个自定义列表:

List<Detailsofemployee> empDetails = new List<Detailsofemployee>();
List<regionDetails> regDetails = new List<regionDetails>();

我想从第一个列表中获取数据,并基于此我想从另一个列表中获取数据

var det = (from l in empDetails where l.ID == "1" select l.Department)
var region = (from l in regDetails where l.Department == det select l.Country)

我怎样才能得到det = "IT"

标签: c#listlinq

解决方案


带有检查和用户输入值

using System.Linq;

var userInputId = //user input value
var emp = empDetails.FirstOrDefault(x => x.Id == userInputId);
var regDetail = new regionDetails();
if (emp != null)
{
   regDetail =  regDetails.FirstOrDefault(c => c.Department == emp.Department);
}
if (regDetail != null)
{
    return regDetail.Country;
}

推荐阅读