Skip to content
Mysql, postgresql, sqlserver, Oracle and SQLite connection object extension methods.
C#
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
FreeSql.Connection.Extensions
Tests
.gitattributes
.gitignore
FreeSql.Connection.Extensions.sln
LICENSE
readme.md

readme.md

这是 FreeSql 衍生出来的扩展包,实现(Mysql/postgresql/sqlserver/Oracle/SQLite)数据库连接对象扩展方法,像 Dapper 一样的使用习惯(QQ群:4336577)。

dotnet add package FreeSql.Connection.Extensions

更新日志

  • 增加 数据库对象.Select 方法;
  • 增加 数据库对象.Update 方法;
  • 增加 数据库对象.Insert 方法;
  • 增加 数据库对象.Delete 方法;
  • 增加 数据库对象.Query 执行 SQL 语句的查询方法;

快速开始

测试实体类

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

    public List<Detail> Details { get; set; }
}
class Detail {
    public Guid id { get; set; }

    public Guid ParentId { get; set; }
    public DateTime createTime { get; set; } = DateTime.Now;
}

查询

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

更多前往Wiki:《Select 查询数据文档》

插入

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

更多前往Wiki:《Insert 插入数据文档》

更新

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

更多前往Wiki:《Update 更新数据文档》

删除

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

更多前往Wiki:《Delete 删除数据文档》

事务

就像 ado.net 那样使用即可。

You can’t perform that action at this time.