/// <summary> /// Creates a new email address in the ECA system. /// </summary> /// <typeparam name="T">The IEmailAddressable entity type.</typeparam> /// <param name="newEmailAddress">The email address.</param> /// <returns>The created email address entity.</returns> public EmailAddress Create <T>(NewEmailAddress <T> newEmailAddress) where T : class, IEmailAddressable { var addressable = this.Context.Set <T>().Find(newEmailAddress.GetEmailAddressableEntityId()); List <EmailAddress> existingEmailAddresses = new List <EmailAddress>(); if (newEmailAddress.IsPrimary) { existingEmailAddresses = newEmailAddress.CreateGetEmailAddressesQuery(this.Context).ToList(); } return(DoCreate(newEmailAddress, addressable, existingEmailAddresses)); }
/// <summary> /// Creates a new email addres in the ECA system. /// </summary> /// <typeparam name="T">The IEmailAddressable entity type.</typeparam> /// <param name="newEmailAddress">The email address.</param> /// <returns>The created semail address entity.</returns> public async Task <EmailAddress> CreateAsync <T>(NewEmailAddress <T> newEmailAddress) where T : class, IEmailAddressable { var addressable = await this.Context.Set <T>().FindAsync(newEmailAddress.GetEmailAddressableEntityId()); List <EmailAddress> existingEmailAddresses = new List <EmailAddress>(); if (newEmailAddress.IsPrimary) { existingEmailAddresses = await newEmailAddress.CreateGetEmailAddressesQuery(this.Context).ToListAsync(); } return(DoCreate(newEmailAddress, addressable, existingEmailAddresses)); }