I am using the Entity Framework to update my database. The Employee table has an employeeId primary key field. When I instantiate an employee object, the employeeId defaults to zero. I want to insert the employee object into the database, ignoring the primary key value of zero. Yet I get this exception; Cannot insert explicit value for identity column in table 'Employees' when IDENTITY_INSERT is set to OFF. What should I be doing to stop this?
public void Add()
{
using (SHPContainerEntities db = new SHPContainerEntities())
{
// Set default values
this.StartDate = DateTime.Now;
// Start date now
this.SHP_UserRoleId = db.SHP_UserRoles.Where(x => x.RoleName == "Employee").Single().UserRoleId;
// Default user role is "Employee". This can be changed later.
this.DepartmentId = 1;
// This is a temporary fix.
db.AddToEmployees(this);
//db.Employees.AddObject(this);
db.SaveChanges();
}
}