コード例 #1
0
 public StockUser AddUser(StockUser newUser)
 {
     _dbStockContext.User.Add(newUser);
     _dbStockContext.SaveChanges();
     return(newUser);
     //   throw new NotImplementedException();
 }
コード例 #2
0
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new StockUser {
                    UserName = model.Email, Email = model.Email
                };
                var result = await UserManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false);

                    // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771
                    // Send an email with this link
                    // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
                    // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
                    // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>");

                    return(RedirectToAction("Index", "Home"));
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
コード例 #3
0
        public List <StockTrans> RetrieveStockTrans(StockUser user)
        {
            return(_dbStockContext.Stock.Where(a => a.StockUserId == user.Id).OrderBy(a => a.TransDate)
                   .ToList());

            throw new NotImplementedException();
        }
コード例 #4
0
ファイル: UnitTest1.cs プロジェクト: mogh64/Forex4u
        public void TestMethod1()
        {
            try
            {
                using (var contex = new ApplicationDbContext(_options))
                {
                    StockUser stockUser = new StockUser()
                    {
                        Email = "*****@*****.**",
                        FirstName = "ali",
                        LastName = "garom",
                        MobileNumber = "09124568897",
                        WebPassword = "******"
                    };
                    UserController controller = new UserController(new UserEfRepository(contex));
                   var user =  controller.Post(stockUser);

                    Assert.IsTrue(user.StockUserId > 0);
                }
            }
            catch(Exception ex)
            {
                throw ex;
            }
           
            

            
        }
コード例 #5
0
        public IActionResult Get()
        {
            //return new string[] { "value1", "value2" };
            var       email = User.Identity.Name;
            StockUser user  = new StockUser();

            user = _stockUserRepo.GetUserInfo(email);
            return(Ok(user.Id));
        }
コード例 #6
0
        public StockUser Update(StockUser item)
        {
            var memItem = userList.Find(it => it.StockUserId == item.StockUserId);

            memItem.FirstName    = item.FirstName;
            memItem.LastName     = item.LastName;
            memItem.MobileNumber = item.MobileNumber;
            memItem.State        = item.State;

            return(item);
        }
コード例 #7
0
ファイル: UserEfRepository.cs プロジェクト: mogh64/Forex4u
        public StockUser Update(StockUser item)
        {
            var dbItem = dbContext.StockUsers.Find(item.StockUserId);

            dbItem.FirstName    = item.FirstName;
            dbItem.LastName     = item.LastName;
            dbItem.MobileNumber = item.MobileNumber;
            dbItem.State        = item.State;

            return(item);
        }
コード例 #8
0
ファイル: UserEfRepository.cs プロジェクト: mogh64/Forex4u
        public StockUser Add(StockUser item)
        {
            var dbUser = dbContext.StockUsers.FirstOrDefault(it => it.MobileNumber == item.MobileNumber);

            if (dbUser != null)
            {
                throw new Exception("User Mobile Number is duplicated!!");
            }
            dbContext.StockUsers.Add(item);
            dbContext.SaveChanges();
            return(item);
        }
コード例 #9
0
        private string BuildToken(StockUser user)
        {
            var claims = new[]
            {
                new Claim(ClaimTypes.Name, user.MobileNumber)
            };

            var key   = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(StaticValues.SecurityKey));
            var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256);

            var token = new JwtSecurityToken(
                issuer: StaticValues.Issuer,
                audience: StaticValues.Issuer,
                claims: claims,
                expires: DateTime.Now.AddMinutes(30),
                signingCredentials: creds);

            return(new JwtSecurityTokenHandler().WriteToken(token));
        }
コード例 #10
0
        public async Task <ActionResult> ExternalLoginConfirmation(ExternalLoginConfirmationViewModel model, string returnUrl)
        {
            if (User.Identity.IsAuthenticated)
            {
                return(RedirectToAction("Index", "Manage"));
            }

            if (ModelState.IsValid)
            {
                // Get the information about the user from the external login provider
                var info = await AuthenticationManager.GetExternalLoginInfoAsync();

                if (info == null)
                {
                    return(View("ExternalLoginFailure"));
                }
                var user = new StockUser {
                    UserName = model.Email, Email = model.Email
                };
                var result = await UserManager.CreateAsync(user);

                if (result.Succeeded)
                {
                    result = await UserManager.AddLoginAsync(user.Id, info.Login);

                    if (result.Succeeded)
                    {
                        await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false);

                        return(RedirectToLocal(returnUrl));
                    }
                }
                AddErrors(result);
            }

            ViewBag.ReturnUrl = returnUrl;
            return(View(model));
        }
コード例 #11
0
        // GET: User/Create
        public ActionResult Create()
        {
            StockUserViewModel stockUser = new StockUserViewModel();

            stockUser.loginUserId = this.User.Identity.Name;
            stockUser.userTransId = 0;
            // stockUser.user.Id = 0;
            //lookup email--if exists, populate form with data
            StockUser userFound = _StockUserRepo.GetUserInfo(stockUser.loginUserId);

            if (userFound != null)
            {
                //populate view model with stockuser data
                stockUser.user.Id           = userFound.Id;
                stockUser.user.FName        = userFound.FName;
                stockUser.user.LName        = userFound.LName;
                stockUser.user.TotCash      = userFound.TotCash;
                stockUser.user.TotEquity    = userFound.TotEquity;
                stockUser.user.TotPortfolio = userFound.TotPortfolio;
            }

            return(View(stockUser));
        }
コード例 #12
0
 public StockUser Add(StockUser item)
 {
     item.StockUserId = ++maxId;
     userList.Add(item);
     return(item);
 }
コード例 #13
0
 public void DeleteUser(StockUser oldUser)
 {
     _dbStockContext.User.Remove(oldUser);
     _dbStockContext.SaveChanges();
     throw new NotImplementedException();
 }
コード例 #14
0
 public void UpdateUser(StockUser user)
 {
     _dbStockContext.Entry(user).State = EntityState.Modified;
     _dbStockContext.SaveChanges();
     throw new NotImplementedException();
 }