Dapper的用法与DBHelper的用法有些许类似,便于记忆理解。
//数据库连接字符串
string connStr = "Data Source=.;Initial Catalog=MonthTest;Integrated Security=True";
string connStr = "Data Source=.;Initial Catalog=MonthTest;Integrated Security=True";
//Dapper添加
[HttpPost]
public int DapperAdd(GoodsInfo gd)
{
var i = 0;
using (IDbConnection conn = new SqlConnection(connStr))
{
string sql = $"insert into GoodsInfoes values('{gd.GName}',{gd.GPrice},{gd.GNum},{gd.TypeInfoId},'{gd.GImg}')";
i = conn.Execute(sql);
}
return i;
}
[HttpPost]
public int DapperAdd(GoodsInfo gd)
{
var i = 0;
using (IDbConnection conn = new SqlConnection(connStr))
{
string sql = $"insert into GoodsInfoes values('{gd.GName}',{gd.GPrice},{gd.GNum},{gd.TypeInfoId},'{gd.GImg}')";
i = conn.Execute(sql);
}
return i;
}
//Dapper显示
[HttpGet]
public List<GoodsInfo> DapperShow()
{
using (IDbConnection conn = new SqlConnection(connStr))
{
string sql = $"select * from GoodsInfoes g join TypeInfoes t on g.TypeInfoId=t.Id";
return conn.Query<GoodsInfo>(sql).ToList();
}
}
[HttpGet]
public List<GoodsInfo> DapperShow()
{
using (IDbConnection conn = new SqlConnection(connStr))
{
string sql = $"select * from GoodsInfoes g join TypeInfoes t on g.TypeInfoId=t.Id";
return conn.Query<GoodsInfo>(sql).ToList();
}
}
//Dapper删除
[HttpDelete]
public int DapperDel(int id)
{
int i = 0;
using (IDbConnection conn = new SqlConnection(connStr))
{
string sql = $"delete from GoodsInfoes where Id={id}";
i = conn.Execute(sql);
}
return i;
}
[HttpDelete]
public int DapperDel(int id)
{
int i = 0;
using (IDbConnection conn = new SqlConnection(connStr))
{
string sql = $"delete from GoodsInfoes where Id={id}";
i = conn.Execute(sql);
}
return i;
}
//查看详情
[HttpGet]
public GoodsInfo DapperDetial(int id)
{
using (IDbConnection conn = new SqlConnection(connStr))
{
GoodsInfo gd = new GoodsInfo();
string sql = $"select * from GoodsInfoes where Id={id}";
return conn.Query<GoodsInfo>(sql, gd).FirstOrDefault();
}
}
[HttpGet]
public GoodsInfo DapperDetial(int id)
{
using (IDbConnection conn = new SqlConnection(connStr))
{
GoodsInfo gd = new GoodsInfo();
string sql = $"select * from GoodsInfoes where Id={id}";
return conn.Query<GoodsInfo>(sql, gd).FirstOrDefault();
}
}
//编辑状态
[HttpPut]
public int DapperEdit(int id, string name)
{
using (IDbConnection conn = new SqlConnection(connStr))
{
string sql = $"update GoodsInfoes set GName='{name}' where Id={id}";
return conn.Execute(sql);
}
}
[HttpPut]
public int DapperEdit(int id, string name)
{
using (IDbConnection conn = new SqlConnection(connStr))
{
string sql = $"update GoodsInfoes set GName='{name}' where Id={id}";
return conn.Execute(sql);
}
}
//Dapper调用存储过程
[HttpGet]
public PageModel DapperPage(string name, int index, int size)
{
if (name == null)
{
name = "";
}
DynamicParameters para = new DynamicParameters();
para.Add("@name", name);
para.Add("@index", index);
para.Add("@size", size);
para.Add("@total", dbType: DbType.Int32, direction: ParameterDirection.Output);
para.Add("@count", dbType: DbType.Int32, direction: ParameterDirection.Output);
PageModel page = new PageModel();
[HttpGet]
public PageModel DapperPage(string name, int index, int size)
{
if (name == null)
{
name = "";
}
DynamicParameters para = new DynamicParameters();
para.Add("@name", name);
para.Add("@index", index);
para.Add("@size", size);
para.Add("@total", dbType: DbType.Int32, direction: ParameterDirection.Output);
para.Add("@count", dbType: DbType.Int32, direction: ParameterDirection.Output);
PageModel page = new PageModel();
using (IDbConnection conn = new SqlConnection(connStr))
{
page.List = conn.Query<GoodsInfo>("p_page", para, commandType: CommandType.StoredProcedure).ToList();
page.PageCount = para.Get<int>("@count");
}
return page;
}
{
page.List = conn.Query<GoodsInfo>("p_page", para, commandType: CommandType.StoredProcedure).ToList();
page.PageCount = para.Get<int>("@count");
}
return page;
}