DBLayer는 최근 오픈 소스 데이터베이스 경량 ORM 프레임워크로 현재 sqlserver, mysql, oracle을 지원하며 페이징을 위해 특별히 캡슐화되어 있습니다.
이 프레임워크는 7~8년 전부터 점진적으로 업그레이드되었으며 많은 프로젝트를 거쳐 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; }
스프링과 함께 사용하시길 권장합니다. 구체적인 구성코드를 보시려면 소스코드를 입력해주세요.
봄에 여러 데이터베이스 연결을 동시에 구성하여 데이터베이스 연결 문자열 비밀번호 암호화를 지원합니다. 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에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!