SimpleData 连接数据库的组件

SimpleData,官网给的定义是A lightweight, dynamic data access component for .NET, written in C#.

我的理解是:一个轻量的动态的连接数据库组件,都算不上ORM,比ADO更简单更便捷的操作。

它充分应用了C#的dynamic特性

自己在原来的NancyDemo里面稍微体验了一下,好用谈不上,只是感觉特别好玩,魔性,用法也很简单,但暂时还不了解怎么在大型项目里面应用。

nuget引用包Simple.Data.Core和Simple.Data.SqlServer(用的什么数据库就引用什么包),顺便会引用Simple.Data.SqlServer(包间依赖)

新建DB类,如下所示

internal class DataBaseHelper
    {
        public static dynamic Open()
        {
            var conn = ConfigurationManager.ConnectionStrings["Default"].ConnectionString;
            return Database.Opener.OpenConnection(conn, "System.Data.SqlClient");
        }
}

应用的时候很简单,很动态,如下所示

var db = DataBaseHelper.Open();
//插入操作
var insertEntity = new User { id = 1, name = "zhaiweihao" };
var user = db.Users.Insert(insertEntity);
//更新操作
var updateEntity = db.Users.UpdateByid(id: param.id,name:"修改后的值");
//删除操作
db.Users.DeleteById(id: param.id);
//查询操作(主键查询)
var result = db.Users.Get(param.id);

很简单很魔性的写法。

应用时碰到的问题,查询操作表里必须要有主键。

并没有过多研究,暂时感觉用起来不麻烦,写demo可以用~ 

原文地址:https://www.cnblogs.com/AceZhai/p/5833271.html