Dapper 応用匿名型に結果を詰めるvar dsn = "Server=server01;Port=5432;User Id=taro;Password=mypass;Database=mydb"; var cn = new NpgsqlConnection(dsn); cn.Open(); var all = cn.Query(@"SELECT * FROM t1"); 指定した型に結果を詰める
public class MyEntity
{
public int Id { get; set; }
public string Name { get; set; }
}
var all = cn.Query<MyEntity>(@"SELECT * FROM t1"); プリペアドステートメントで動的なパラメータを引数にする DynamicParameters p = new DynamicParameters();
//DynamicParameters p = new DynamicParameters(dict);
p.Add("age", 10);
var sql = @"SELECT * FROM user WHERE " + String.Join(" AND ", where);
var rows = con.Query(sql, p);
http://stackoverflow.com/questions/9481678/how-to-create-arguments-for-a-dapper-query-dynamically シングルカラムvar count = (int) con.Query<Int64>(@"SELECT COUNT(*) AS count FROM t1").Single(); 結果セットを返さないクエリの実行 var numOfRows = con.Execute("UPDATE t1 foo = @foo WEHRE @id > 10", new { id = 10, foo = 1 });
プリペアドステートメントでのLIKE演算子 users = cn.Query(@"SELECT * FROM user WHERE name LIKE @name LIMIT 10", new { name = '%' + val + '%'});
または users = cn.Query(@"SELECT * FROM user WHERE name LIKE '%' || @name || '%' LIMIT 10", new { name = val });
|
|