public static int Save(int employeeId, int addressId, Address addressToSave)
        {
            ExecuteTypeEnum queryId = ExecuteTypeEnum.InsertItem;
            int result = 0;

            if (addressToSave.AddressId > 0)
            {
                queryId = ExecuteTypeEnum.UpdateItem;
            }

            using (SqlConnection myConnection = new SqlConnection(AppConfiguration.ConnectionString))
            {
                using (SqlCommand myCommand = new SqlCommand("usp_ExecuteAddress", myConnection))
                {
                    myCommand.CommandType = CommandType.StoredProcedure;

                    myCommand.Parameters.AddWithValue("@QueryId", queryId);
                    myCommand.Parameters.AddWithValue("@EmployeeId", employeeId);
                    myCommand.Parameters.AddWithValue("@AddressId", addressId);

                    if (addressToSave.AddressString != null)
                    {
                        myCommand.Parameters.AddWithValue("@AddressString", addressToSave.AddressString);
                    }
                    if (addressToSave.City != null)
                    {
                        myCommand.Parameters.AddWithValue("@City", addressToSave.City);
                    }
                    if (addressToSave.State != null)
                    {
                        myCommand.Parameters.AddWithValue("@State", addressToSave.State);
                    }
                    if (addressToSave.EntityType.EntityTypeId != null)
                    {
                        myCommand.Parameters.AddWithValue("@EntityTypeId", addressToSave.EntityType.EntityTypeId);
                    }

                    //add return output parameter to command object
                    myCommand.Parameters.Add(HelperDAL.GetReturnParameterInt("ReturnValue"));

                    myConnection.Open();
                    myCommand.ExecuteNonQuery();

                    //Get return value from stored procedure and return Id
                    result = (int)myCommand.Parameters["@ReturnValue"].Value;
                }
                myConnection.Close();
            }
            return result;
        }
        /// <summary>
        /// Initializes a new instance of the Email Address class and fills it with the data from the IDataRecord
        /// </summary>
        /// <param name="myDataRecord"></param>
        /// <returns></returns>
        private static Address FillDataRecord(IDataRecord myDataRecord)
        {
            Address myAddressObject = new Address();

            myAddressObject.AddressId = myDataRecord.GetInt32(myDataRecord.GetOrdinal("addressId"));

            if (!myDataRecord.IsDBNull(myDataRecord.GetOrdinal("addressValue")))
            {
                myAddressObject.AddressString = myDataRecord.GetString(myDataRecord.GetOrdinal("addressValue"));
            }
            if (!myDataRecord.IsDBNull(myDataRecord.GetOrdinal("city")))
            {
                myAddressObject.City = myDataRecord.GetString(myDataRecord.GetOrdinal("city"));
            }
            if (!myDataRecord.IsDBNull(myDataRecord.GetOrdinal("stateName")))
            {
                myAddressObject.State = myDataRecord.GetString(myDataRecord.GetOrdinal("stateName"));
            }

            return myAddressObject;
        }
 public static int Save(int employeeId, int addressId, Address addressToSave)
 {
     //Call DAL to save
     return AddressDAL.Save(employeeId, addressId, addressToSave);
 }