linq怎样实现用户登录,三层架构方式?我以前不是没用过linq,下面是我实现登录方法:
封装的方法:
public static OracleDataReader GetExecuteReader(string sqlstring, params OracleParameter[] parames)
{
OracleCommand command = new OracleCommand(sqlstring, GetConnection());
OracleDataReader datareader = null;
if (parames != null)
{
foreach (OracleParameter parms in parames)
{
command.Parameters.Add(parms);
}
}
datareader = command.ExecuteReader();
return datareader;
}
DAL层:
public Model.UserInfo UserInfoIsLogin(string username,string userpwd,string typeno)
{
Model.UserInfo userinfomodel = null;
OracleDataReader datareader = null;
string sqlstr = "select * from view_userinfo where username=:username and userpwd=:userpwd";
OracleParameter[] parames ={
new OracleParameter("username",OracleType.VarChar,20),
new OracleParameter("userpwd",OracleType.VarChar,20)
};
parames[0].Value = username;
parames[1].Value = userpwd;
datareader = OrclHelper.GetExecuteReader(sqlstr, parames);
userinfomodel = new Model.UserInfo();
if (datareader.HasRows)
{
while (datareader.Read())
{
userinfomodel.Comment = datareader["res"].ToString();
userinfomodel.Typeno = datareader["typeno"].ToString();
userinfomodel.Typename = datareader["typename"].ToString();
userinfomodel.Username = datareader["username"].ToString();
userinfomodel.Userpwd = datareader["userpwd"].ToString();
}
}
return userinfomodel;
}
Model.UserInfo是实体层中用户数据;
其它层就简单了,如果用linq应该怎样写?
封装的方法:
public static OracleDataReader GetExecuteReader(string sqlstring, params OracleParameter[] parames)
{
OracleCommand command = new OracleCommand(sqlstring, GetConnection());
OracleDataReader datareader = null;
if (parames != null)
{
foreach (OracleParameter parms in parames)
{
command.Parameters.Add(parms);
}
}
datareader = command.ExecuteReader();
return datareader;
}
DAL层:
public Model.UserInfo UserInfoIsLogin(string username,string userpwd,string typeno)
{
Model.UserInfo userinfomodel = null;
OracleDataReader datareader = null;
string sqlstr = "select * from view_userinfo where username=:username and userpwd=:userpwd";
OracleParameter[] parames ={
new OracleParameter("username",OracleType.VarChar,20),
new OracleParameter("userpwd",OracleType.VarChar,20)
};
parames[0].Value = username;
parames[1].Value = userpwd;
datareader = OrclHelper.GetExecuteReader(sqlstr, parames);
userinfomodel = new Model.UserInfo();
if (datareader.HasRows)
{
while (datareader.Read())
{
userinfomodel.Comment = datareader["res"].ToString();
userinfomodel.Typeno = datareader["typeno"].ToString();
userinfomodel.Typename = datareader["typename"].ToString();
userinfomodel.Username = datareader["username"].ToString();
userinfomodel.Userpwd = datareader["userpwd"].ToString();
}
}
return userinfomodel;
}
Model.UserInfo是实体层中用户数据;
其它层就简单了,如果用linq应该怎样写?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货