如何从列表

时间:2017-08-03 06:08:38

标签: c# list generic-list generic-collections

班级结构

 public class EmployeeDetails
 {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Exp { get; set; }
 }

员工详细信息列表

Id Name       Exp
-- ---------  --------
1  Bill       2 years
2  John       5 years
3  Doug       1 years

我想删除一个字段表单列表对象,例如Id,如下面的输出

Name       Exp
---------  --------
Bill       2 years
John       5 years
Doug       1 years

任何人都知道怎么做?
与我分享
谢谢

4 个答案:

答案 0 :(得分:7)

您可以尝试:

var listWithoutCol = List.Select(x => new { x.Name , x.Exp}).ToList();

将返回仅包含字段名称 Exp ...

字段信息的列表

答案 1 :(得分:1)

如果您希望新列表具有具体类型对象而不是匿名对象,则可以自己定义没有ID的相应类:

public class EmployeeDetailsDTO
{
    public string Name { get; set; }
    public string Exp { get; set; }
}

并使用选择为:

var listWithoutIDs = List.Select(x => new EmployeeDetailsDTO{ Name = x.Name , Exp = x.Exp}).ToList();

答案 2 :(得分:0)

var employeeDetails = new List<EmployeDetails> { Id=1, Name="Peter", Exp="Two years" };   
var listWithoutId = employeeDetails.Select(x => new { x.Name, x.Exp}).ToList();

答案 3 :(得分:0)

您可以使用JsonIgnore
 public class EmployeeDetails
 {
        [JsonIgnore]
        public int Id { get; set; }
        public string Name { get; set; }
        public string Exp { get; set; }
 }