C# 关于自动实现的属性C的问题

C# 关于自动实现的属性C的问题,c#,refactoring,C#,Refactoring,我有以下代码: void Main() { List<Employee> employeeList; employeeList = new List<Employee> { {new Employee("000001", "DELA CRUZ, JUAN T.")}, {new Employee("000002", "GOMEZ, MAR B.")}, {new Employee("000003",

我有以下代码:

void Main()
{
    List<Employee> employeeList;

    employeeList = new List<Employee>
    {
        {new Employee("000001", "DELA CRUZ, JUAN T.")},
        {new Employee("000002", "GOMEZ, MAR B.")},
        {new Employee("000003", "RIVERA, ERWIN J.")}
    };

    employeeList.Dump();
}

public class Employee
{
    public string EmployeeNo { get; set; }
    public string Name { get; set; }

    public Employee(string employeeNo, string name)
    {
        this.EmployeeNo = employeeNo;
        this.Name = name;
    }   
}
我应该如何仅使用属性创建Employee类的新实例并将该实例添加到employeeList?我的意思是不使用Employee的类构造函数

我已经提出了一个解决方案,但太长了。我该怎么缩短它

void Main()
{   
    List<Employee> employeeList;

    #region - I want to shorten these lengthy codes. 
    Employee employee1 = new Employee();
    employee1.EmployeeNo = "000001";
    employee1.Name = "DELA CRUZ, JUAN T.";

    Employee employee2 = new Employee();
    employee2.EmployeeNo = "000002";
    employee2.Name = "GOMEZ, MAR B.";
    // other employees...
    #endregion

    employeeList = new List<Employee>
    {
        employee1,
        employee2
    };

    employeeList.Dump();
}

public class Employee
{
    public string EmployeeNo { get; set; }
    public string Name { get; set; }    
}

你可以这样做

var employee1 = New Employee() { EmployeeNo = "000001", Name = "DELA CRUZ, JUAN T." };

你可以这样做

var employee1 = New Employee() { EmployeeNo = "000001", Name = "DELA CRUZ, JUAN T." };
你可以这样做

var list = new List<Employee> 
{
  new Employee {EmployeeNo = "000001", Name = "Peter Pan"}, 
  new Employee {EmployeeNo = "000002", Name = "King Kong"}
};
这个

public class EmployeeList : List<Employee>
{
    public void Add(string no, string name)
    {
        this.Add(new Employee(no, name));
    }
}

var list = new EmployeeList 
{ 
  { "000001", "Peter Pan" }, 
  { "000002", "King Kong"} 
};
你可以这样做

var list = new List<Employee> 
{
  new Employee {EmployeeNo = "000001", Name = "Peter Pan"}, 
  new Employee {EmployeeNo = "000002", Name = "King Kong"}
};
这个

public class EmployeeList : List<Employee>
{
    public void Add(string no, string name)
    {
        this.Add(new Employee(no, name));
    }
}

var list = new EmployeeList 
{ 
  { "000001", "Peter Pan" }, 
  { "000002", "King Kong"} 
};
这个怎么样

void Main()
{   
    var employeeList = new List<Employee> {
                            new Employee { EmployeeNo = "000001", Name = "DELA CRUZ, JUAN T." },
                            new Employee { EmployeeNo = "000002", Name = "GOMEZ, MAR B." }
                       };

    employeeList.Dump();
}

public class Employee
{
    public string EmployeeNo { get; set; }
    public string Name { get; set; }    
}
这个怎么样

void Main()
{   
    var employeeList = new List<Employee> {
                            new Employee { EmployeeNo = "000001", Name = "DELA CRUZ, JUAN T." },
                            new Employee { EmployeeNo = "000002", Name = "GOMEZ, MAR B." }
                       };

    employeeList.Dump();
}

public class Employee
{
    public string EmployeeNo { get; set; }
    public string Name { get; set; }    
}

+1,不知道您可以使用自己的Add方法重载+1,不知道您可以使用自己的Add方法重载