You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用.NET C# LINQ从Employee对象列表生成属性拼接字符串列表?

问题与解决方案

我有一个Employee对象列表,每个Employee实例包含Name和Address属性,需要用.NET C#的LINQ语句生成一个由Employee.Name + "_" + Employee.Address拼接而成的字符串列表。


修正后的代码示例

原代码中Name和Address属性被错误定义为int类型,无法赋值字符串,以下是修正后的正确代码:

public class Employee
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Address { get; set; }
}

List<Employee> emplist = new List<Employee>
{
    new Employee { Id = 1, Name = "John Doe", Address = "Some Street 5" },
    new Employee { Id = 2, Name = "Jack Daniels", Address = "Main Avenue 43" },
    new Employee { Id = 3, Name = "Jane Murphy", Address = "BlahBlah 123" }
};

LINQ实现方案

方法一:LINQ方法语法

通过Select投影操作,直接将每个Employee对象转换为目标拼接字符串:

var resultList = emplist.Select(e => $"{e.Name}_{e.Address}").ToList();

方法二:LINQ查询表达式

如果更习惯查询表达式的写法,可采用以下实现:

var resultList = (from e in emplist
                  select $"{e.Name}_{e.Address}").ToList();

注意事项

  • 上述代码使用C#字符串插值($""),与e.Name + "_" + e.Address功能一致,但可读性更强。
  • 若Name或Address可能为null,建议添加空值处理,避免生成null_xxx或xxx_null这类无效字符串,示例如下:
    var resultList = emplist.Select(e => $"{e.Name ?? string.Empty}_{e.Address ?? string.Empty}").ToList();
    

内容的提问来源于stack exchange,提问作者patsy2k

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 18:52:44