public void AddPerson(Person person)
{
OpenConnection();
_command.CommandText =
"INSERT INTO Persons(FirstName, LastName, DateOfBirth, Address, PolicyNumber) VALUES(@FirstName, @LastName, @DateOfBirth, @Address, @PolicyNumber)";
_command.Parameters.Add(GetParam("@FirstName", person.FirstName));
_command.Parameters.Add(GetParam("@LastName", person.LastName));
_command.Parameters.Add(GetParam("@Address", person.Address));
_command.Parameters.Add(GetParam("@DateOfBirth", person.DateOfBirth));
_command.Parameters.Add(GetParam("@PolicyNumber", person.PolicyNumber));
try
{
_command.ExecuteNonQuery();
//LOGGING
Logger.Info("Person was added in database");
}
catch (SqlException ex)
{
//LOGGING
Logger.Error("This person already exists!",ex);
throw new InvalidOperationException("This person already exists!");
}
catch (Exception ex)
{
//LOGGING
Logger.Error("Can't add person!",ex);
throw new InvalidOperationException("Can't add person!");
}
finally
{
CloseConnection();
}
}