参数化查询:
DynamicParameters par = new DynamicParameters();
par.Add("ID",1);
par.Add("Score",80);
var list = studentServices.GetModelList("where user_id=@ID and score=@Score", par);
根据ID查询:
var n = userServices.GetModel(1);
一对多查询:
这个字典是重点,画起来,要考,慢慢理解
using (_connection = DbClient.OpenConnection())
{
string sql = "select * from users u join student st on u.id=st.user_id and score=80";
var pa = new Dictionary<int, Users>();
var qry = _connection.Query<Users, Student, Users>(sql, (u, stu) =>
{
Users user = new Users();
if (!pa.TryGetValue(u.ID, out user))
{
pa.Add(u.ID, user = u);
}
user.students.Add(stu);
return user;
}).Distinct();
return qry;
}