类图:
时序图:
UI层代码:
namespace LoginUI
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnLogin_Click(object sender, EventArgs e)
{
string userName = txtUserName.Text.Trim();
string password = txtPassword.Text;
Login.BLL.LoginManager mgr = new Login.BLL.LoginManager();
Login.Model.UserInfo user = mgr.UserLogin(userName, password);
MessageBox.Show("登录用户:" + user.UserName);
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
BLL层代码:
namespace Login.BLL
{
public class LoginManager
{
public Login.Model.UserInfo UserLogin(string userName, string password)
{
Login.DAL.UserDAO uDao = new Login.DAL.UserDAO();
Login.Model.UserInfo user = uDao.SelectUser(userName, password);
if (user != null)// login successfully.
{
return user;
}
else
{
throw new Exception ("登录失败。");
}
}
}
}
DAL层代码:
namespace Login.DAL
{
public class UserDAO
{
public Login.Model.UserInfo SelectUser(string userName, string password)
{
using (SqlConnection conn = new SqlConnection(DbUtil.ConnString))
{
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = @"SELECT UserName, Pwd
FROM Login_Info WHERE UserName=@UserName AND Pwd=@Password";
cmd.CommandType = CommandType.Text;
cmd.Parameters.Add(new SqlParameter("@UserName",userName));
cmd.Parameters.Add(new SqlParameter("@Password",password));
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
Login.Model.UserInfo user = null;
while (reader.Read())
{
if (user == null)
{
user = new Login.Model.UserInfo();
}
user.UserName = reader.GetString(0);
user.PassWord = reader.GetString(1);
}
return user;
}
}
}
}
Model 代码:
namespace Login.Model
{
public class UserInfo
{
public string UserName { get; set; }
public string PassWord { get; set; }
}
}