找到经验并用它来展示用户
find experience and display users with it
我有一个文本框,用户可以在其中输入一些数字,例如 6。我有一个基于 class 的数据网格视图,其中包含姓名、工作日期和职位。我需要展示在这家公司工作了 6 年或更长时间的员工。当用户输入一个新号码时,显示在该时间段工作的新员工列表。需要用今天的日期减去就业日期,如果这个数字等于或大于文本框中输入的数字,则显示在该公司有此类工作经验的员工。我已经用名称做了类似的事情,这是它的代码:
var text = textBox4.Text;
var result = workers.MyList.Where(m => m._Name == text).ToList();
dataGridView1.DataSource = result;
为了添加新员工,我使用了:
workers.Add(new employee(textBox1.Text, dateTimePicker1.Value, textBox2.Text));
var data = workers.MyList.Select(bring => new
{
Name = bring._Name,
Date = bring._Date,
Position = bring._Position,
}).ToList();
dataGridView1.DataSource = data;
如果你的Date
属性是员工入职日期类型DateTime
,那么你可以试试下面的代码,
if(int.TryParse(textBox3.Text, out int exp))
{
//Get difference between today's year and Date year
dataGridView1.DataSource = data
.Where(x => (DateTime.Today.Year - x.Date.Year) >= exp)
.ToList(); //Convert to list
}
else
MessageBox.Show("Invalid experiece enter a number", "Invalid experience", MessageBoxButtons.OK, MessageBoxIcon.Error);
这对我有用。
var exp = Convert.ToInt32(textBox3.Text);
var res= workers.MyList.Where(x => (DateTime.Now.Year - x._Date.Year) >= exp)
.ToList(); //Convert to list
dataGridView1.DataSource = res;
我有一个文本框,用户可以在其中输入一些数字,例如 6。我有一个基于 class 的数据网格视图,其中包含姓名、工作日期和职位。我需要展示在这家公司工作了 6 年或更长时间的员工。当用户输入一个新号码时,显示在该时间段工作的新员工列表。需要用今天的日期减去就业日期,如果这个数字等于或大于文本框中输入的数字,则显示在该公司有此类工作经验的员工。我已经用名称做了类似的事情,这是它的代码:
var text = textBox4.Text;
var result = workers.MyList.Where(m => m._Name == text).ToList();
dataGridView1.DataSource = result;
为了添加新员工,我使用了:
workers.Add(new employee(textBox1.Text, dateTimePicker1.Value, textBox2.Text));
var data = workers.MyList.Select(bring => new
{
Name = bring._Name,
Date = bring._Date,
Position = bring._Position,
}).ToList();
dataGridView1.DataSource = data;
如果你的Date
属性是员工入职日期类型DateTime
,那么你可以试试下面的代码,
if(int.TryParse(textBox3.Text, out int exp))
{
//Get difference between today's year and Date year
dataGridView1.DataSource = data
.Where(x => (DateTime.Today.Year - x.Date.Year) >= exp)
.ToList(); //Convert to list
}
else
MessageBox.Show("Invalid experiece enter a number", "Invalid experience", MessageBoxButtons.OK, MessageBoxIcon.Error);
这对我有用。
var exp = Convert.ToInt32(textBox3.Text);
var res= workers.MyList.Where(x => (DateTime.Now.Year - x._Date.Year) >= exp)
.ToList(); //Convert to list
dataGridView1.DataSource = res;