c# - c# 如何从列表中的记录中只获取一个值?
问题描述
我有两个自定义列表:
List<Detailsofemployee> empDetails = new List<Detailsofemployee>();
List<regionDetails> regDetails = new List<regionDetails>();
empDetails
有价值观{"1","Sam","IT"}
。regDetails
有价值观{"IT","UK"}
。
我想从第一个列表中获取数据,并基于此我想从另一个列表中获取数据
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"
?
解决方案
带有检查和用户输入值
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;
}
推荐阅读
- hyperledger-fabric - Hyperledger 结构:余额转移:执行 ./runApp.sh 时出错
- javascript - Web API 安全 javascript 客户端
- swift - 如何从超级协议中获得一致的协议?
- ava - ava 对快照属性匹配器的支持
- javascript - 基于数字属性并将字符串移动到最后
- c# - 为什么从 Cancel 抛出工作流异常时没有捕获到?
- visual-studio-2019 - 如何为多项目解决方案配置 vcpkg
- spring - Webflux EndpointConfiguration RouterFunctions.route 错误
- javascript - Heroku buildpack 马忽略 package.json 中的节点版本
- javascript - 将 JSON 中的特定对象数组存储在字符串 var 中