Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Einführung in den neuesten Open-Source-DBLayer

Detaillierte Einführung in den neuesten Open-Source-DBLayer

零下一度
零下一度Original
2017-06-23 15:04:381862Durchsuche

DBLayer, mein aktuelles leichtes ORM-Framework für Open-Source-Datenbanken, unterstützt derzeit SQL Server, MySQL und Oracle und ist speziell für Paging gekapselt.

Dieses Framework wurde seit sieben oder acht Jahren schrittweise aktualisiert und hat viele Projekte durchlaufen. Ich hoffe, dass es jeden von SQL-Strings befreien kann.

Open-Source-Adresse


Zugangscode-Fall

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;
        }

Es wird empfohlen, es mit Spring zu verwenden. Bitte geben Sie den Quellcode ein, um den spezifischen Konfigurationscode anzuzeigen.

Konfigurieren Sie im Frühjahr mehrere Datenbankverbindungen gleichzeitig und unterstützen Sie die Passwortverschlüsselung der Datenbankverbindungszeichenfolge. Fügen Sie einfach den Schlüssel zu „passwordKey“ hinzu

  <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>

Zusätzlich zur automatischen Codierung von Daten unterstützt die eindeutige Datenbankkennung auch die automatische Generierung von GUID und Zeitpunkten auf der Codeseite. Der folgende Code ist die UUID, der Zeitpunkt und die automatische Nummer, die in der Reihenfolge

  <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>

generiert werden

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in den neuesten Open-Source-DBLayer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn