public async Task <DonkeySellUser> CreateOrUpdateUser(ViewUser viewUser) { if (!viewUser.IsValid()) { throw new FormatException(); } DonkeySellUser newUser = null; if (context.Users.Any(x => x.UserName == viewUser.UserName)) { newUser = await UpdateUser(viewUser); } else { newUser = await CreateUser(viewUser); // mail confirmation if (!string.IsNullOrEmpty(ConfigurationManager.AppSettings.Get("password"))) { await mailSender.SendEmailConfirmationMessage(newUser.Email, newUser.ConfirmationGuid, viewUser.UserName); } } return(newUser); }