.NET norm轻量级 orm 开发框架 norm

联合创作 · 2023-09-30 02:12

norm 是一款轻巧,高效,实用的针对.NET开发的 orm ,它使用简单,大量语法参照 sql 语法,例如:OQL.From(model).Where(w => w.Compare(model.ID, "=", 388)).OrderBy(m => m.Asc(model.CreateDate)).Select().End;model为数据库表对应的映射实体。
norm 设计思路是:由OQL根据给定的语法,自动生成sql 语句,然后用DataBase 数据库实例最终去完成查询,增加,删除等操作。NORM 查询要多少数据,生成相关sql 去数据库检索多少数据最后转化成实体对象,这样避免给服务器造成过多的内存点用和性能消耗。
norm 目前支持 sqllite , sqlserver,postgresql 三种数据库,后续会加入更多的数据库类型支持。
 查询示例:
1. 先由DataBaseFactory 类创建数据库实例代码如下:
var db = DataBaseFactory.Create(); //配置文件 <connectionStrings>下 默认配置连接字符串
2.生成数据表实体
Generator.BuildEntity(db, "T_Accounts", "NORM.Models", out sb)
3.编写OQL  语法
OQL oql= OQL.From(model).Where(w => w.Compare(model.ID, "=", 388)).OrderBy(m => m.Asc(model.CreateDate)).Select().End;
4.执行OQL 返回实体集合
var list= EntityQuery<Models.T_Accounts>.QueryToList(oql, db);
插入示例:
1. 创建数据为实例:方法同上
2. 定义model
 Models.T_Accounts model = new Models.T_Accounts();
   model.DeleteSign = 0;
   model.Describ = "描述";
   model.CreateDate = DateTime.Now;
3.开启事务
db.BeginTransaction();
4.执行插入
EntityQuery<Models.T_Accounts>.Instance.Insert(model, db);
5.提交事务
db.Commit();
...
项目开源地址:https://git.oschina.net/sqlorm/NORM
 

浏览 4
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报