/// <summary> /// Creates a new phone number in the ECA system. /// </summary> /// <typeparam name="T">The IPhoneNumberable entity type.</typeparam> /// <param name="newPhoneNumber">The phone number.</param> /// <returns>The created phone number entity.</returns> public PhoneNumber Create <T>(NewPhoneNumber <T> newPhoneNumber) where T : class, IPhoneNumberable { var phoneNumberable = this.Context.Set <T>().Find(newPhoneNumber.GetPhoneNumberableEntityId()); List <PhoneNumber> existingPhoneNumbers = new List <PhoneNumber>(); if (newPhoneNumber.IsPrimary) { existingPhoneNumbers = newPhoneNumber.CreateGetPhoneNumbersQuery(this.Context).ToList(); } return(DoCreate(newPhoneNumber, phoneNumberable, existingPhoneNumbers)); }
/// <summary> /// Creates a new phone number in the ECA system. /// </summary> /// <typeparam name="T">The IEmailAddressable entity type.</typeparam> /// <param name="newPhoneNumber">The phone number.</param> /// <returns>The created phone number entity.</returns> public async Task <PhoneNumber> CreateAsync <T>(NewPhoneNumber <T> newPhoneNumber) where T : class, IPhoneNumberable { var phoneNumberable = await this.Context.Set <T>().FindAsync(newPhoneNumber.GetPhoneNumberableEntityId()); List <PhoneNumber> existingPhoneNumbers = new List <PhoneNumber>(); if (newPhoneNumber.IsPrimary) { existingPhoneNumbers = await newPhoneNumber.CreateGetPhoneNumbersQuery(this.Context).ToListAsync(); } return(DoCreate(newPhoneNumber, phoneNumberable, existingPhoneNumbers)); }