private void AddressesChangesUpdate(cUser Demography) { List <cAddress> addresses = Session["dem_Addresses"] as List <cAddress>; int userId = (int)Session["UserID"]; //For each element of the original list perform one of the following: //If update, update information //If delete, mark record for delete //If new, mark record for adding cAddress a1 = null; if (Demography.UserAddresses != null) { foreach (cAddress a in Demography.UserAddresses) //state in database { a1 = addresses.FirstOrDefault(x => x.AddressID == a.AddressID); //If record not found in memory that means it was deleted if (a1 == null) { a.SaveUpdate(userId, true); } else { a1.SaveUpdate(userId); } } } a1 = addresses.FirstOrDefault(x => x.AddressID <= 0); if (a1 != null && a1.IsValid()) // If new and valid, let push it to the database { a1.SaveUpdate(userId); } }
protected void btnSaveAddress_Click(object sender, EventArgs e) { int iAddressID; if (int.TryParse(hidAddressID.Value, out iAddressID)) { cAddress UpdateAddress = new cAddress(iAddressID, _UserName, _UserID); UpdateAddress.AddressID = iAddressID; UpdateAddress.Address1 = tbEnterAddress1.Text; UpdateAddress.Address2 = tbEnterAddress2.Text; UpdateAddress.City = tbEnterCity.Text; UpdateAddress.StateID = ddlEnterState.SelectedValue; UpdateAddress.PostalCode = tbEnterZipCode.Text; UpdateAddress.Country = tbEnterCountry.Text; UpdateAddress.IsPrimary = cbxEnterAddressPrimary.Checked; int iTemp; if (int.TryParse(ddlEnterAddressType.SelectedValue, out iTemp)) { UpdateAddress.AddressTypeID = iTemp; } UpdateAddress.SaveUpdate(_UserID); } }
protected void btnDeleteAddress_Click(object sender, EventArgs e) { int iAddressID; if (int.TryParse(hidDeleteAddressID.Value, out iAddressID)) { cAddress UpdateAddress = new cAddress(iAddressID, _UserName, _UserID); UpdateAddress.SaveUpdate(_UserID, true); } }