/// <summary> /// This method Create Members With EF /// </summary> public List <EF.Member> CreateMembersWithEF() { // initial value List <EF.Member> members = new List <EF.Member>(); // local EF.Member member = null; // iterate the MembersToCreate for (int x = 0; x < info.MembersToCreate; x++) { // Create the member with EF member = CreateMemberWithEF(); // If the member object exists if (NullHelper.Exists(member)) { // add this member members.Add(member); } } // return value return(members); }
/// <summary> /// This method Save Members /// </summary> public bool SaveMembers(List <EF.Member> members) { // initial value bool saved = false; // locals int count = 0; DataContext context = new DataContext(); string message = "First Pass - Saving Members With Entity Framework"; // If the members collection exists and has one or more items if (ListHelper.HasOneOrMoreItems(members)) { // Setup the Graph SetupGraph(message, members.Count, 0); // iterate the members foreach (EF.Member currentMember in members) { // increment the value for count count++; // get a local copy EF.Member member = currentMember; // Save any changes context.Member.Add(member); // save every 50 records if (count % 50 == 0) { try { // Save the changes context.SaveChanges(); // Setup the Graph SetupGraph(message, members.Count, count); } catch (DbEntityValidationException ex) { // for debugging only DebugHelper.WriteDebugError("SaveMembers", "MembersCreatorControl", ex); } catch (DbUpdateException ex) { // for debugging only DebugHelper.WriteDebugError("SaveMembers", "MembersCreatorControl", ex); } // Setup the Graph SetupGraph(message, members.Count, count); } } // now update the Address message = "Saving Addresses"; // Setup the Graph SetupGraph(message, members.Count, 0); // reset count = 0; // iterate the members foreach (EF.Member member in members) { // increment the value for count count++; // if the memberId is set and the Address exists if ((member.Id > 0) && (member.Address != null)) { // set the Address member.Address.MemberId = member.Id; // Add this address context.Address.Add(member.Address); } // save every 50 records if (count % 50 == 0) { try { // Save the changes context.SaveChanges(); // Setup the Graph SetupGraph(message, members.Count, count); } catch (DbEntityValidationException ex) { // for debugging only DebugHelper.WriteDebugError("SaveMembers", "MembersCreatorControl", ex); } catch (DbUpdateException ex) { // for debugging only DebugHelper.WriteDebugError("SaveMembers", "MembersCreatorControl", ex); } // Setup the Graph SetupGraph(message, members.Count, count); } } // giving the benefit of the doubt saved = true; // Show a message to the user MessageBoxHelper.ShowMessage("Save Members Has Finished", "Save Complete"); } // return value return(saved); }
/// <summary> /// This method returns the Member With EF /// </summary> public EF.Member CreateMemberWithEF() { // initial value EF.Member member = new EF.Member(); // Locals EF.ZipCode zipCode = null; // locals string unit = ""; try { // set each property member.Active = true; // Create Address member.Address = new EF.Address(); // get the AddressNumber int addressNumber = AddressNumberShuffler.PullNumber(); // if the AddressNumber if (addressNumber % 100 < Info.PercentInApartments) { // now get a number % 26 int isUnitNumericValue = ((addressNumber * 67) % 100) + 1; // If this value is higher than percent needed for UnitNumeric if (isUnitNumericValue > Info.PercentUnitNumeric) { // This is a letter instead of a number unit = "Unit " + ((char)((isUnitNumericValue % 26) + 65)).ToString(); } else { // split half up to say 'Apt.' and half up to say #' if (addressNumber % 2 == 0) { unit = "Apt. #" + isUnitNumericValue.ToString(); } else if (addressNumber % 3 == 1) { unit = "#" + isUnitNumericValue.ToString(); } } } // Set the properties on the Address member.Address.StreetAddress = (addressNumber.ToString() + " " + EFStreetNames[StreetNameShuffler.PullNumber()].Name); member.Address.Unit = unit; // set the ZipCode zipCode = EFZipCodes[ZipCodeShuffler.PullNumber()]; // if the zipCode exists if (NullHelper.Exists(zipCode)) { // Set the City member.Address.City = zipCode.CityName; member.Address.StateId = zipCode.StateId; member.Address.ZipCode = zipCode.Name; } // Seft the FirstName & LastName member.FirstName = EFFirstNames[FirstNameShuffler.PullNumber()].Name; member.LastName = EFLastNames[LastNameShuffler.PullNumber()].Name; } catch (Exception error) { // for debugging only DebugHelper.WriteDebugError("CreateMemberWithEF", "MemberGenerator", error); } // return value return(member); }