Member 10874581 Ответов: 1

Я не могу войти в систему


Когда я отлаживаю свою программу я получаю ошибку в моей пользовательской функции определения не в состоянии отлаживать любезно помогите мне

Что я уже пробовал:

[HttpPost]
        [AllowAnonymous]
        [ValidateAntiForgeryToken]
        public ActionResult Login(Login login)
        {
            if (ModelState.IsValid)
            {

                bool success = objIAccountData.Login(login.username, login.password, false);
                var UserID = GetUserID_By_UserName(login.username);
                var LoginType = GetRoleBy_UserID(Convert.ToString(UserID));

                if (success == true)
                {
                    if (string.IsNullOrEmpty(Convert.ToString(LoginType)))
                    {
                        ModelState.AddModelError("Error", "Rights to User are not Provide Contact to Admin");
                        return View(login);
                    }
                    else
                    {
                        Session["Name"] = login.username;
                        Session["UserID"] = UserID;
                        Session["LoginType"] = LoginType;

                        if (Roles.IsUserInRole(login.username, "Admin"))
                        {
                            return RedirectToAction("AdminDashboard", "Dashboard");
                        }




                        else
                        {
                            return RedirectToAction("UserDashboard", "Dashboard");
                        }
                    }
                }
                else
                {

                    ModelState.AddModelError("Error", "Please enter valid Username and Password");
                    return View(login);
                }
            }
            else
            {
                ModelState.AddModelError("Error", "Please enter Username and Password");
            }
            return View(login);

        }






public static bool Login(string userName, string password, bool persistCookie = false)
{

    SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Mystring"].ToString();
      var para = new DynamicParameters();
        para.Add("@UserName", userName);
        var para1 = new DynamicParameters();
        para1.Add("@password", password);

        var t  = con.Query<int>("login_pro", null, null, true, 0, CommandType.StoredProcedure).ToList().SingleOrDefault();
        if (t == 1)
        {
            return true;
        }

        else
        {
            return false;
        }





хранимая процедура


CREATE PROCEDURE login_pro
	-- Add the parameters for the stored procedure here
	@UserName varchar(50),
        @Password varchar(50)
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	declare @status int
if exists(select * from [Users] where UserName=@UserName and Password=@Password)
       set @status=1
else
       set @status=0
select @status
 
END
GO

Patrice T

Дайте точное сообщение об ошибке и где.

1 Ответов

Рейтинг:
2

Khunt Suchit

Привет. Это ужасная идея хранить пароль в обычном тексте.

пожалуйста, обратитесь по ссылке ниже. Он описывает, как хранить пароль в базе данных с помощью хэширования, и вы можете также найдите код для входа в систему в MVC.

Функциональность входа в систему в MVC[^]