11.16三层架构
1.查询
进行模糊查询要将%%号写在SqlParameter 实例中,写法为
SqlParameter sqlParameters = new SqlParameter("@name",$"%{name}%");
SQL语句中不需要添加%%,也不用加引号,加@即可,
var sql = "select * from ClassInfo where name like @name"; SqlParameter sqlParameters = new SqlParameter("@name",$"%{name}%"); DataTable table = SqlHelper.Query(sql,sqlParameters); List<ClassInfo> list = new List<ClassInfo>(); foreach (DataRow row in table.Rows) { var cls = new ClassInfo() { Id = Convert.ToInt32(row["Id"]), Name=Convert.ToString(row["Name"]), Comment=Convert.ToString(row["Comment"]) }; list.Add(cls); } return list; }
2.根据ID查询
SqlParameter[] sqlParameters = new SqlParameter[] { new SqlParameter("@id",id) };
SqlDataReader reader = SqlHelper.Reader(sql, sqlParameters);
ClassInfo info = null;
if (reader.Read())
{ info = new ClassInfo() { Id = Convert.ToInt32(reader["Id"]), Name = Convert.ToString(reader["Name"]), Comment = Convert.ToString(reader["Comment"]) }; } reader.Close(); return info; }
3.BLL层只需要调用DAL层方法即可
public static List<ClassInfo> Select(string name="") { return ClassInfoDAL.Select(name); } public static ClassInfo Select(int id) { return ClassInfoDAL.Select(id); }
4.在UI层绑定BLL层方法,并绑定到Gridview中。
用DataSource引用BLL层方法,再用DataBind()绑定到Gridview.
5.AutoGenerateColumns="False"为取消自动添加列

浙公网安备 33010602011771号