FreeSql 擴展包實現 Dapper 的使用習慣


簡介

FreeSql.Connection.Extensions 這是 FreeSql 衍生出來的擴展包,實現(Mysql/postgresql/sqlserver/Oracle/SQLite)數據庫連接對象擴展方法,像 Dapper 一樣的使用習慣。QQ群:4336577(已滿)、8578575(在線)

快速上手

dotnet add package FreeSql.Connection.Extensions

測試實體類

class TestConnectionExt {
    public Guid id { get; set; }
    public string title { get; set; }
    public DateTime createTime { get; set; } = DateTime.Now;
}

查詢

和 FreeSql 一樣的查詢方法。

using (var conn = new MySqlConnection(_connectString)) {
    var list = conn.Select<TestConnectionExt>().Where(a => a.id == item.id).ToList();
}

插入

和 FreeSql 一樣的插入方法。

using (var conn = new MySqlConnection(_connectString)) {
    var item = new TestConnectionExt { title = "testinsert" };
    var affrows = conn.Insert<TestConnectionExt>().AppendData(item).ExecuteAffrows();
}

更新

和 FreeSql 一樣的更新方法。

using (var conn = new MySqlConnection(_connectString)) {
    var affrows = conn.Update<TestConnectionExt>()
        .Where(a => a.Id == xxx)
        .Set(a => a.title, "testupdated")
        .ExecuteAffrows();
}

刪除

和 FreeSql 一樣的刪除方法。

using (var conn = new MySqlConnection(_connectString)) {
    var affrows = conn.Delete<TestConnectionExt>()
        .Where(a => a.Id == xxx)
        .ExecuteAffrows();
}

事務

就像 ado.net 那樣使用即可。自己控制開啟、提交或回滾事務。

連接狀態

若 conn 連接對象未打開,內部使用時會 Open,使用完后 Close;

若 conn 連接對象已打開,內部不重復 Open,使用完后也不 Close;

更新日志

  • 增加 數據庫對象.Select 方法;
  • 增加 數據庫對象.Update 方法;
  • 增加 數據庫對象.Insert 方法;
  • 增加 數據庫對象.Delete 方法;
  • 增加 數據庫對象.Query 執行 SQL 語句的查詢方法;

結語

這個項目屬於研究性目的,為之后 FreeSql.Abp 做鋪墊。簡單提及一下 FreeSql.Abp 是什么,有了它就可以在 Abp 項目中使用 FreeSql 了。

gayhub: https://github.com/2881099/FreeSql

做 .NETCore 最方便的 ORM!歡迎關注!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM