Maison > développement back-end > Tutoriel C#.Net > Introduction détaillée au dernier DBLayer open source

Introduction détaillée au dernier DBLayer open source

零下一度
Libérer: 2017-06-23 15:04:38
original
1888 Les gens l'ont consulté

DBLayer, mon récent framework ORM léger de base de données open source, prend actuellement en charge sqlserver, mysql, oracle et est spécialement encapsulé pour la pagination.

Ce framework a été progressivement mis à niveau depuis sept ou huit ans et a fait l'objet de nombreux projets. J'espère qu'il pourra libérer tout le monde des chaînes SQL.

Adresse open source


Cas du code d'accès

var id = TheService.InsertEntity<SysLog, long>(
        () => new SysLog()
        {
            LogId = -1,
            LogContentJson = "测试",
            LogCreater = "测试",
            LogCreateTime = DateTime.Now,
            LogType = "1"});
Copier après la connexion
分页操作
Copier après la connexion
        /// <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;
        }
Copier après la connexion

Il est recommandé de l'utiliser avec Spring. Veuillez entrer le code source pour afficher le code de configuration spécifique.

Configurez plusieurs connexions à la base de données au printemps en même temps, en prenant en charge le cryptage du mot de passe de la chaîne de connexion à la base de données. Ajoutez simplement la clé à 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>
Copier après la connexion

En plus du codage automatique des données, l'identifiant unique de la base de données prend également en charge la génération automatique de GUID et de points temporels côté code. Le code suivant est un uuid, un point temporel et un numéro automatique générés dans l'ordre

  <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>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal