我想從函數謂詞中建立sql where子句。我想實現看起來如下:是否有可能從C#函數謂詞中構建SQL where子句?
public IEnumerable<TDbEntity> Query(Func<TDbEntity, bool> predicate)
{
// TODO: to build whereCondText from predicate
var whereCondText = "";
var sql = "SELECT * FROM TABLE WHERE " + whereCondText;
return DB.Connection.Query<TDbEntity>(sql);
}
我正在使用小巧玲瓏。 – Tushar
https://github.com/tmsmith/Dapper-Extensions/ https://github.com/tmsmith/Dapper-Extensions/wiki/Predicates是否有幫助? – mjwills
你想要做的事情正是ORM所做的事情,而不是委託,他們從'表達式'做它。所以要回答你的問題:是的,你可以用'Expression'來做到這一點,但這並不容易。更好的問題是,如果ORM可以做到這一點,爲什麼要這麼做呢? – CodingYoshi