【发布时间】:2014-12-21 02:55:34
【问题描述】:
仍然是初学者,所以请在这方面与他们坦诚相待。我希望能够在列表区分存在重复值后向我的属性添加数字值。
例如,两个用户在系统中输入了他们具有相同的员工 ID 001,列表允许他们都进入,然后应用条件来检查列表是否有任何重复项,因此在这种情况下会有。现在这个条件为真,将 1 添加到该属性,所以最后一个员工现在的员工 ID 为 002。
我相信 LINQ 很可能会参与此过程,但不确定如何进行。我知道我还必须在执行此操作后更新我的列表,以在整个程序中保持属性状态。
提前感谢希望一切都清楚,再次提问如何为列表中的属性添加价值
代码片段如下。
Employee = new Employee(employeeFirstName, employeeLastName,001); // Hard coded for sake of example.
EmployeeList.AddEmployee(Employee);
员工列表类
public static void AddEmployee(Employee employee)
{
employees.Add(new Employee(employee.FirstName,employee.LastName,employee.EmployeeID));
employees.Add(new Employee("John", "Jones", 001));
}
public void employeeIdValidation()
{
if (employees.Count() != employees.Select(x => new {staffId = x.EmployeeID }).Distinct().Count())
{
Console.WriteLine("Every Book and Category should be unique");
// employee ID increments by 1
// update List
}
else
{
Console.WriteLine("No duplicate found");
}
}
public static List<Employee> GetEmployeeList()
{
return employees; // With the updated EmployeeID
}
【问题讨论】:
-
您使用什么作为后端来存储数据?通常,ID 不是由用户提供,而是在插入记录时由数据库本身提供。
-
它只是存储在列表中,是的,我完全同意你的观点,但是在这个程序中它将由用户自己提供。
标签: c# linq properties