如何将ComboBox.SelectedIndex添加为FK

时间:2012-04-16 09:02:09

标签: c# .net .net-3.5 entity-framework-4.1 foreign-keys

我有一个包含ComboBox的表单,其中包含有关城市的数据。 我想将FK cityid插入到Employee表中。那么我该如何添加?

我正在做以下事情,但它会给我一个错误:

Payroll.Entities.City p = (Payroll.Entities.City) cmbCity.SelectedIndex;

如何在员工表中分配城市ID?

3 个答案:

答案 0 :(得分:1)

var city = db.Cities.Single(c => c.Id == Int32.Parse(cmbCity.SelectedValue));
employee.City = city;

答案 1 :(得分:1)

如果您将城市加载到组合框中,那么SelectedItem应该有效:

Payroll.Entities.City p = (Payroll.Entities.City) cmbCity.SelectedItem;


但是如果你只是将部分城市数据加载到组合框中,那么这样的东西应该可以工作:

var p = db.Cities.Single(c => c.Name == cmbCity.SelectedValue);
//or
//var p = db.Cities.Single(c => c.Name == cmbCity.Text);

答案 2 :(得分:-1)

ssuming EntityObj是你的实体对象。

Payroll.Entities.Employee objEmp = new Payroll.Entities.Employee();
objEmp.cityid = int.Parse(cmbCity.SelectedValue);
EntityObj.AddToEmployee(objEmp);
EntityObj.SaveChanges();