基于Visual Studio 2015的C# List<UserDTO>遍历填充经理信息问题
嗨,这就帮你搞定这个需求!下面是在Visual Studio 2015环境下用C#实现遍历集合填充经理信息的完整方案:
实现步骤
1. 定义UserDTO类
首先按照你的需求定义UserDTO数据传输类:
public class UserDTO { public string UserID { get; set; } public string UserName { get; set; } public string ManagerName { get; set; } public string ManagerEmail { get; set; } }
2. 初始化UserDTO集合
创建并初始化包含部分用户数据的集合:
List<UserDTO> lstUsr = new List<UserDTO>(); lstUsr.Add(new UserDTO { UserID = "A1", UserName = "AXZ" }); lstUsr.Add(new UserDTO { UserID = "B1", UserName = "BYZ" });
3. 遍历集合填充经理信息
假设你已经有一个根据UserID获取经理姓名和邮箱的方法(这里我先写个示例模拟实际业务逻辑,你可以替换成你真实的方法),然后通过遍历集合为每个用户对象填充经理信息:
示例:定义获取经理信息的方法
// 模拟你已有的获取经理信息的方法,实际中可能是从数据库、接口等获取数据 private (string ManagerName, string ManagerEmail) GetManagerInfo(string userId) { // 根据UserID返回对应经理信息 switch(userId) { case "A1": return ("John Doe", "john.doe@company.com"); case "B1": return ("Jane Smith", "jane.smith@company.com"); default: return ("Unknown Manager", "unknown@company.com"); } }
遍历填充逻辑
用foreach循环遍历集合,调用方法填充每个用户的经理字段:
// 遍历集合,逐个填充经理信息 foreach(var user in lstUsr) { var managerData = GetManagerInfo(user.UserID); user.ManagerName = managerData.ManagerName; user.ManagerEmail = managerData.ManagerEmail; } // 可选:验证填充结果 foreach(var user in lstUsr) { Console.WriteLine($"用户ID: {user.UserID}, 用户名: {user.UserName}, 经理姓名: {user.ManagerName}, 经理邮箱: {user.ManagerEmail}"); }
补充说明
如果你的GetManagerInfo是异步方法(比如调用远程API),可以改用异步遍历的方式:
// 异步版本示例 foreach(var user in lstUsr) { var managerData = await GetManagerInfoAsync(user.UserID); user.ManagerName = managerData.ManagerName; user.ManagerEmail = managerData.ManagerEmail; }
内容的提问来源于stack exchange,提问作者Marid
相关产品推荐
相关产品推荐

