public ActionResult SignIn(LoginModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var userLoginInfo = BLLAccount.Instance.FindAccount(App_Global.AppGlobal.Connectionstring, model.LoginName, model.Password);
                    if (userLoginInfo != null)
                    {
                        string avatar = userLoginInfo.Data1 as string;
                        var    login  = new BaseLoginInformation()
                        {
                            UserId = userLoginInfo.Id, LoginName = userLoginInfo.Code, FullName = userLoginInfo.Name, Roles = new List <string>(), Avatar = (!string.IsNullOrEmpty(avatar) ? avatar : "")
                        };
                        switch (userLoginInfo.Data)
                        {
                        case (int)UserRole.Admin: login.Roles.Add(UserRoleConstant.Admin); break;

                        case (int)UserRole.Member: login.Roles.Add(UserRoleConstant.Member); break;
                        }
                        AddAuthentication(login, model.RememberMe);
                        return(RedirectToLocal(returnUrl));
                    }
                    else
                    {
                        return(View(model));
                    }
                }
                catch (Exception ex)
                {
                    throw ex;
                    // dc50Exception.AddToModelState(ModelState);
                    return(View(model));
                }
            }
            else
            {
                return(View(model));
            }
        }
 private void AddAuthentication(BaseLoginInformation baseLoginInformation, bool rememberMe)
 {
     if (baseLoginInformation.Roles.Contains(UserRoleConstant.Contractor))
     {
         //var contractorLoginInfor = _userService.GetContractorLogin(baseLoginInformation);
         //contractorLoginInfor.UserId = baseLoginInformation.UserId;
         //_iDC50AuthenticationService.AddAuthentication<ContractorLoginInformation>(Response, rememberMe, contractorLoginInfor);
     }
     else if (baseLoginInformation.Roles.Contains(UserRoleConstant.Member))
     {
         //  var memberLoginInfor = _userService.GetMemberLogin(baseLoginInformation);
         // memberLoginInfor.UserId = baseLoginInformation.UserId;
         FormAuthenticationService.Instance.AddAuthentication <MemberLoginInformation>(Response, rememberMe, new MemberLoginInformation()
         {
             UserId = baseLoginInformation.UserId, LoginName = baseLoginInformation.LoginName, FullName = baseLoginInformation.FullName, Roles = baseLoginInformation.Roles, Avatar = baseLoginInformation.Avatar
         });
     }
     else
     {
         FormAuthenticationService.Instance.AddAuthentication <BaseLoginInformation>(Response, rememberMe, baseLoginInformation);
     }
 }