dblayer,我最近开源的数据库轻量级orm框架,目前支持sqlserver、mysql、oracle, 特别做了分页的封装。
这个框架从七八年前开始逐渐升级而来,也经历了不少项目,希望可以将大家从sql字符串中解放出来。
开源地址
访问代码案例
var id = TheService.InsertEntity<SysLog, long>(
() => new SysLog()
{
LogId = -1,
LogContentJson = "测试",
LogCreater = "测试",
LogCreateTime = DateTime.Now,
LogType = "1"});分页操作
/// <summary>/// 分页查询/// </summary>/// <param name="condition">查询条件</param>/// <returns></returns>public IEnumerable<SysUser> Seach(SysUserCondition.Search condition)
{var page = new Pager<SysUserCondition.Search>()
{
Condition = condition,
Table = "sys_user",
Key = "user_id",
Order = string.Empty,
Field = "*",
WhereAction = (Condition, Where, Paramters) =>{if (!string.IsNullOrEmpty(Condition.UserName))
{
Where.Append("AND user_name LIKE @user_name ");
Paramters.Add(base.CreateParameter("@user_name", string.Concat("%", Condition.UserName, "%")));
}if (!string.IsNullOrEmpty(Condition.UserEmail))
{
Where.Append("AND user_email LIKE @user_email ");
Paramters.Add(base.CreateParameter("@user_email", string.Concat("%", Condition.UserEmail, "%")));
}if (!string.IsNullOrEmpty(Condition.UserMobile))
{
Where.Append("AND user_mobile LIKE @user_mobile ");
Paramters.Add(base.CreateParameter("@user_mobile", string.Concat("%", Condition.UserMobile, "%")));
}
}
};var result = base.GetResultByPager<SysUser, SysUserCondition.Search>(page);return result;
}
推荐和spring 配合使用,具体配置代码请进入源码查看。
同时在spring 配置多个数据库连接,支持数据库连接字符串密码加密。只需要在 passwordKey加入密钥
<object id="sql_wxius_string_server" type="DBLayer.Core.ConnectionString, DBLayer.Core" singleton="true">
<property name="Properties">
<name-values>
<add key="userid" value="sa" />
<add key="password" value="***" />
<add key="passwordKey" value="" />
<add key="database" value="wxius" />
<add key="datasource" value="." />
</name-values>
</property>
<property name="ConnectionToken" value="Password=${password};Persist Security Info=True;User ID=${userid};Initial Catalog=${database};Data Source=${datasource};pooling=true;min pool size=5;max pool size=10" />
</object>
数据库唯一标识除了可以数据自动编码,还支持在代码端自动 生成 GUID 和 时间点。下面代码是uuid,时间点并按照顺序生成的自动编号
<object id="uuidGenerator" type="DBLayer.Persistence.UUIDGenerator, DBLayer.Persistence" singleton="true" >
<!--workerId:区域(机房):3 bits-->
<constructor-arg name="workerId" value="1"/>
<!--regionId:机器编号:10 bits-->
<constructor-arg name="regionId" value="1"/>
<!--twepoch:基准时间:Thu, 04 Nov 2010 01:42:54 GMT-->
<!--(long)(DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalMilliseconds-->
<constructor-arg name="twepoch" value="1288834974657"/>
</object>
编辑推荐:
- 最新开源DBLayer的详细介绍02-21
- C#中匿名委托以及Lambda表达式的实例详解02-21
- asp .net 面试题及答案分享02-21
- wcf什么意思?关于wcf的实例教程02-21
- WPF核心的技术--数据绑定02-21
- C# 并行任务之Parallel类的实例介绍02-21
- Win10预览版10041反馈功能的改进让分类更清晰02-21
- win10企业版如何激活,怎么激活Win10企业版02-21
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- asp .net 面试题及答案分享
asp .net 面试题及答案分享
26-02-21 - wcf什么意思?关于wcf的实例教程
wcf什么意思?关于wcf的实例教程
26-02-21 - C# 并行任务之Parallel类的实例介绍
C# 并行任务之Parallel类的实例介绍
26-02-21 - Win10预览版10041反馈功能的改进让分类更清晰
Win10预览版10041反馈功能的改进让分类更清晰
26-02-21 - win10企业版如何激活,怎么激活Win10企业版
win10企业版如何激活,怎么激活Win10企业版
26-02-21 - 最新Win10预览版10049中可关闭Flash Player
最新Win10预览版10049中可关闭Flash Player
26-02-21 - 什么是构造器?引用类型是什么?
什么是构造器?引用类型是什么?
26-02-21 - 怎么操作 ASP.NET Web API ?
怎么操作 ASP.NET Web API ?
26-02-21 - 直接调用vs反射调用实例教程
直接调用vs反射调用实例教程
26-02-21 - C# 中十进制与二进制、十六进制、八进制转换详解
C# 中十进制与二进制、十六进制、八进制转换详解
26-02-21
