public override void PersistAddExtraParameters(SqlParameterCollection parameters, Employee employee) { var emp = employee as EmployeeFullTime; if (emp != null) { parameters.AddWithValue("@AnnualSalary", emp.AnnualSalary); } }
public override void PersistAddExtraParameters(SqlParameterCollection parameters, Employee employee) { var emp = employee as EmployeePartTime; if (emp != null) { parameters.AddWithValue("@HourlyPay", emp.HourlyPay); parameters.AddWithValue("@HoursWorked", emp.HoursWorked); } }
public virtual void Persist(Employee employee) { using (SqlConnection con = new SqlConnection(DBUtil.ConnStr)) { SqlCommand cmd = new SqlCommand("spSaveEmployee", con) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.Add(new SqlParameter("@Id", employee.Id)); cmd.Parameters.Add(new SqlParameter("@Name", employee.Name)); cmd.Parameters.Add(new SqlParameter("@Gender", employee.Gender)); cmd.Parameters.Add(new SqlParameter("@DateOfBirth", employee.DateOfBirth)); cmd.Parameters.Add(new SqlParameter("@EmployeeType", employee.Type)); cmd.Parameters.Add(new SqlParameter("@City", employee.City)); PersistAddExtraParameters(cmd.Parameters, employee); con.Open(); cmd.ExecuteNonQuery(); } }
public virtual void PersistAddExtraParameters(SqlParameterCollection parameters, Employee employee) { //Must override in child clasess to add extra parameters }
public static EmployeeInfo ConvertToEmployeeInfo(Employee employee) { if (employee == null) return null; var employeeInfo = new EmployeeInfo() { Id = employee.Id, Name = employee.Name, Gender = employee.Gender, DOB = employee.DateOfBirth, Type = employee.Type }; if (employeeInfo.Type == EmployeeType.EmployeeFullTime) { employeeInfo.AnnualSalary = ((EmployeeFullTime)employee).AnnualSalary; } else { employeeInfo.HourlyPay = ((EmployeePartTime)employee).HourlyPay; employeeInfo.HoursWorked = ((EmployeePartTime)employee).HoursWorked; } return employeeInfo; }