2017-07-25 111 views
0

我有一个代码在这里登录,它的工作,但你可以看到,我硬编码的用户名和密码,我想要做的是从数据库中获取帐户,最好使用RAW SQL非Entity框架,请帮忙。ASP.NET MVC通过数据库登录

[HttpPost] 
public ActionResult Login(LoginViewModel login) 
{ 
    if (!ModelState.IsValid) 
    { 
     ViewBag.Error = "Form is not valid; please review and try again."; 
     return View("Login"); 
    } 

    if (login.Username == "bpradmin" && login.Password == "admin123") 
     FormsAuthentication.RedirectFromLoginPage(login.Username, true); 

    ViewBag.Error = "Credentials invalid. Please try again."; 
    return View("Login"); 
} 
+0

你必须尝试的东西,你创建了一个数据库,你已经建立了逻辑连接到数据库?你的问题缺少了很多重要信息。 –

+0

我想你应该看看实体框架的基本教程 - 它会让你清楚地了解连接到数据库和轻松执行CRUD操作 –

+0

@TezWingfield我已经有一个数据库,我也知道我的连接字符串,但我不知道如何把它放在那里 – Hanzou

回答

0

我也推荐实体框架。那么你应该选择Code First还是Database First。这个框架非常容易理解,一旦你理解了事件的顺序,你就可以做很酷的事情。 这个链接是实体框架 http://www.entityframeworktutorial.net/

0

教程编写存储过程,并呼吁通过简单的ADO.net代码

using(SqlConnection sqlConn=new SqlConnection("Your Connection String")) 
{ 
    using(SqlCommand sqlCmd=new SqlCommand()) 
    { 
     sqlCmd.Connection=sqlConn; 
     sqlConn.Open(); 
     sqlCmd.CommandType=CommandType.StoredProcedure; 
     sqlCmd.CommandText="Your SP name"; 
     sqlCmd.Parameters.Add("@UserName","bpradmin"); 
     sqlCmd.Parameters.Add("@Password","admin123"); 
     sqlCmd.ExecuteScalar(); 
     sqlConn.Close(); 
    } 
}