public ActionResult RegisterUser(string userInfo) { //convert the arguement into an anonymous type for processing var userDef = new { userName = "", passWord = "" }; var user = JsonConvert.DeserializeAnonymousType(userInfo, userDef); string result; List <AltSourceUser> users = (List <AltSourceUser>)AltSourceCache.Cache["users"]; //check to see if user already exists if (users.FirstOrDefault <AltSourceUser>(u => u.username.Equals(user.userName, StringComparison.InvariantCultureIgnoreCase)) == null) { //user doesn't exist create and return success message AltSourceUser newuser = AltSourceUser.CreateUser(user.userName, user.passWord); ((List <AltSourceUser>)AltSourceCache.Cache["users"]).Add(newuser); //create a new bank account for the new user BankAccount acct = BankAccount.NewAccount(newuser.username); ((List <BankAccount>)AltSourceCache.Cache["accounts"]).Add(acct); result = "SUCCESS"; } else { //let interface know of duplicate account isssue result = "DUPLICATE"; } return(Content(result, "text/plain")); }
private static void registerUser() { //get the list of users List <AltSourceUser> users = (List <AltSourceUser>)AltSourceCache.Cache["users"]; string uname; string pwd; Console.WriteLine("Enter a unique user name. Enter 'C' to cancel:"); while (!success) { response = Console.ReadLine().Trim(); if (response.ToUpper() == "C") { //user cancellation return; } //check to ensure the user name is unique within the currently cached objects if (users.FirstOrDefault <AltSourceUser>(u => u.username.Equals(response, StringComparison.InvariantCultureIgnoreCase)) == null) { //user name is unique, create the user and a new bank account success = true; uname = response; pwd = CreatePassword(); AltSourceUser user = AltSourceUser.CreateUser(uname, pwd); ((List <AltSourceUser>)AltSourceCache.Cache["users"]).Add(user); BankAccount acct = BankAccount.NewAccount(user.username); ((List <BankAccount>)AltSourceCache.Cache["accounts"]).Add(acct); Console.WriteLine("Thank you for registering. Your new account # is " + acct.AccountID.ToString() + "."); } else { //alert the user to the duplicate entry so that they can try again or Cancel Console.WriteLine("This user name has already been registered. Please enter a new name or enter 'C' to cancel and login."); } } }