Exemple #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="isread">2:全部,0:未读,1:已读</param>
        /// <param name="userid"></param>
        /// <returns></returns>
        public int GetTotalCounts(int isread, string userid)
        {
            string strwhere = " Accepter='" + userid + "' ";

            if (isread != 2)
            {
                strwhere += " and IsRead=" + isread;
            }

            string sql = @"select * from Sys_MemberMessageBox ";

            if (strwhere != "")
            {
                sql = sql + " where " + strwhere;
            }

            IEnumerable <MemberMessageBox> list = DapperConn.Query <MemberMessageBox>(sql);

            if (list != null)
            {
                return(list.AsList().Count);
            }
            else
            {
                return(0);
            }
        }
        /// <summary>
        /// 根据消息类型查询消息模板
        /// </summary>
        /// <param name="messageType">消息类型</param>
        /// <param name="userId">用户Id</param>
        /// <returns></returns>
        public MemberMessageTemplatesOuputDto GetByMessageTypeWithUser(string messageType, string userId)
        {
            string sqlStr = @"select a.*,b.Id as MemberSubscribeMsgId,b.SubscribeStatus as SubscribeStatus,b.SubscribeType as SubscribeType  from Sys_MessageTemplates as a 
LEFT join Sys_MemberSubscribeMsg as b on a.Id = b.MessageTemplateId where a.UseInWxApplet =1 and a.WxAppletSubscribeTemplateId is not null and a.messageType = '" + messageType + "' and b.SubscribeUserId='" + userId + "'";

            return(DapperConn.QueryFirstOrDefault <MemberMessageTemplatesOuputDto>(sqlStr));
        }
        /// <summary>
        /// 根据用户查询微信小程序订阅消息模板列表,关联用户订阅表
        /// </summary>
        /// <param name="userId">用户编号</param>
        /// <returns></returns>
        public List <MemberMessageTemplatesOuputDto> ListByUseInWxApplet(string userId)
        {
            string sqlStr = @"select a.*,b.Id as MemberSubscribeMsgId,b.SubscribeStatus as SubscribeStatus  from Sys_MessageTemplates as a 
LEFT join Sys_MemberSubscribeMsg as b on a.Id = b.MessageTemplateId and a.UseInWxApplet =1 and b.SubscribeUserId='" + userId + "'  where  a.WxAppletSubscribeTemplateId is not null";

            return(DapperConn.Query <MemberMessageTemplatesOuputDto>(sqlStr).AsToList());
        }
Exemple #4
0
        /// <summary>
        /// 获取根节点组织
        /// </summary>
        /// <param name="id">组织Id</param>
        /// <returns></returns>
        public Organize GetRootOrganize(string id)
        {
            var sb = new StringBuilder(";WITH ");

            if (dbConnectionOptions.DatabaseType == DatabaseType.MySql)
            {
                sb.Append(" Recursive ");
            }
            sb.Append(" T AS (");
            sb.Append(" SELECT Id, ParentId, FullName, Layers FROM Sys_Organize");
            sb.AppendFormat(" WHERE Id = '{0}'", id);
            sb.Append(" UNION ALL ");
            sb.Append(" SELECT A.Id, A.ParentId, A.FullName, A.Layers FROM Sys_Organize AS A JOIN T AS B ON A.Id = B.ParentId ) SELECT* FROM T ORDER BY Layers");
            return(DapperConn.QueryFirstOrDefault <Organize>(sb.ToString()));
        }
Exemple #5
0
        /// <summary>
        /// 更新已读状态
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public bool UpdateIsReadStatus(string id, int isread, string userid)
        {
            string strwhere = " Accepter='" + userid + "' ";

            if (!string.IsNullOrEmpty(id))
            {
                strwhere += " and Id='" + id + "' ";
            }

            string sql = @"update Sys_MemberMessageBox set IsRead=" + isread +
                         ", ReadDate='" + DateTime.Now.ToShortDateString() + "' ";

            if (strwhere != "")
            {
                sql += sql + " where " + strwhere;
            }

            return(DapperConn.Execute(sql) > 0 ? true : false);
        }
 /// <summary>
 /// 根据应用Id和应用标识批量更新数据
 /// </summary>
 /// <param name="beLongAppId">更新后的应用Id</param>
 /// <param name="oldBeLongAppId">更新前旧的应用Id</param>
 /// <param name="belongApp">应用标识</param>
 /// <param name="trans"></param>
 /// <returns></returns>
 public bool UpdateByBeLongAppId(string beLongAppId, string oldBeLongAppId, string belongApp = null, IDbTransaction trans = null)
 {
     try
     {
         trans = DapperConn.BeginTransaction();
         string sqlStr = string.Format("update {0} set beLongAppId='{1}' where beLongAppId='{2}'", this.tableName, beLongAppId, oldBeLongAppId);
         if (!string.IsNullOrEmpty(belongApp))
         {
             sqlStr = string.Format(" and BelongApp='{0}'", belongApp);
         }
         int num = DapperConn.Execute(sqlStr, null, trans);
         trans.Commit();
         return(num >= 0);
     }
     catch (Exception)
     {
         trans.Rollback();
         throw;
     }
 }
Exemple #7
0
        /// <summary>
        /// 根据用户账号查询用户信息
        /// </summary>
        /// <param name="userName"></param>
        /// <returns></returns>
        public async Task <User> GetByUserName(string userName)
        {
            string sql = @"SELECT * FROM Sys_User t WHERE t.Account = @UserName";

            return(await DapperConn.QueryFirstOrDefaultAsync <User>(sql, new { @UserName = userName }));
        }
Exemple #8
0
        /// <summary>
        /// 分页得到所有用户用于关注
        /// </summary>
        /// <param name="currentpage"></param>
        /// <param name="pagesize"></param>
        /// <param name="userid"></param>
        /// <returns></returns>
        public IEnumerable <UserAllListFocusOutPutDto> GetUserAllListFocusByPage(string currentpage,
                                                                                 string pagesize, string userid)
        {
            string sqlRecord = "";
            string sql       = "";

            int countNotIn = (int.Parse(currentpage) - 1) * int.Parse(pagesize);

            sqlRecord = @"select * from sys_user where nickname <> '游客' and  ismember=1 ";

            sql = @"SELECT TOP " + pagesize +
                  @"
case when t2.Id is null then 'n' 
else 'y' end as IfFocus ,
IsNull(t3.totalFocus,0) as TotalFocus, 
t1.*
from 
(select ISNULL(tin2.VipGrade,0) as VipGrade,
ISNULL(tin2.IsAuthentication,0) as IsAuthentication,
ISNULL(tin2.AuthenticationType,0) as AuthenticationType,
tin1.* from sys_user tin1 
left join Sys_UserExtend tin2 on tin1.Id=tin2.UserId 
where nickname <> '游客' and  ismember=1) t1
left join 
(select * from Sys_UserFocus where creatorUserid='" + userid + @"') t2 
on t1.id=t2.focususerid 
left join 
(select  top 100 percent focusUserID,count(*) as totalFocus from Sys_UserFocus group by focusUserID order by totalfocus desc) t3
on t1.Id=t3.focusUserID 

where t1.Id not in 
(
select top " + countNotIn + @"
tt1.Id 
from 
(select ISNULL(tin2.VipGrade,0) as VipGrade,
ISNULL(tin2.IsAuthentication,0) as IsAuthentication,
ISNULL(tin2.AuthenticationType,0) as AuthenticationType,
tin1.* from sys_user tin1 
left join Sys_UserExtend tin2 on tin1.Id=tin2.UserId 
where nickname <> '游客' and  ismember=1) tt1
left join 
(select * from Sys_UserFocus where creatorUserid='" + userid + @"') tt2
on tt1.id=tt2.focususerid 
left join 
(select  top 100 percent focusUserID,count(*) as totalFocus from Sys_UserFocus group by focusUserID order by totalfocus desc) tt3
on tt1.Id=tt3.focusUserID 

order by tt3.totalFocus desc
)

order by t3.totalFocus desc";


            List <UserAllListFocusOutPutDto> list = new List <UserAllListFocusOutPutDto>();

            IEnumerable <UserAllListFocusOutPutDto> infoOutputDto = DapperConn.Query <UserAllListFocusOutPutDto>(sql);

            //得到总记录数
            List <UserAllListFocusOutPutDto> recordCountList = DapperConn.Query <UserAllListFocusOutPutDto>(sqlRecord).AsList();

            list = infoOutputDto.AsList();
            for (int i = 0; i < list.Count; i++)
            {
                list[i].RecordCount = recordCountList.Count;
            }
            return(list);
        }
Exemple #9
0
        /// <summary>
        /// 根据userId查询用户信息
        /// </summary>
        /// <param name="openIdType">第三方类型</param>
        /// <param name="userId">userId</param>
        /// <returns></returns>
        public UserOpenIds GetUserOpenIdByuserId(string openIdType, string userId)
        {
            string sql = string.Format("select * from Sys_UserOpenIds  where OpenIdType = '{0}' and UserId = '{1}'", openIdType, userId);

            return(DapperConn.QueryFirstOrDefault <UserOpenIds>(sql));
        }
Exemple #10
0
        /// <summary>
        /// 根据第三方OpenId查询用户信息
        /// </summary>
        /// <param name="openIdType">第三方类型</param>
        /// <param name="openId">OpenId值</param>
        /// <returns></returns>
        public User GetUserByOpenId(string openIdType, string openId)
        {
            string sql = string.Format("select * from Sys_User as u join Sys_UserOpenIds as o on u.Id = o.UserId and  o.OpenIdType = '{0}' and o.OpenId = '{1}'", openIdType, openId);

            return(DapperConn.QueryFirstOrDefault <User>(sql));
        }
Exemple #11
0
        /// <summary>
        /// 物理删除信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public override bool Delete(string id, IDbTransaction trans = null)
        {
            int row = DapperConn.Execute($"delete from {tableName} where Id=@id", new { @id = id }, trans);

            return(row > 0 ? true : false);
        }
Exemple #12
0
        /// <summary>
        /// 根据Email、Account、手机号查询用户信息
        /// </summary>
        /// <param name="account">登录账号</param>
        /// <returns></returns>
        public async Task <User> GetUserByLogin(string account)
        {
            string sql = @"SELECT * FROM Sys_User t WHERE (t.Account = @Account Or t.Email = @Account Or t.MobilePhone = @Account)";

            return(await DapperConn.QueryFirstOrDefaultAsync <User>(sql, new { @Account = account }));
        }
        /// <summary>
        /// 根据会员ID获取用户登录信息实体
        /// </summary>
        /// <param name="userId"></param>
        /// <returns></returns>
        public UserLogOn GetByUserId(string userId)
        {
            string sql = @"SELECT * FROM Sys_UserLogOn t WHERE t.UserId = @UserId";

            return(DapperConn.QueryFirst <UserLogOn>(sql, new { UserId = userId }));
        }
        /// <summary>
        /// 按用户、订阅类型和消息模板主键查询
        /// </summary>
        /// <param name="subscribeType">消息类型</param>
        /// <param name="userId">用户</param>
        /// <param name="messageTemplateId">模板Id主键</param>
        /// <returns></returns>
        public MemberMessageTemplatesOuputDto GetByWithUser(string subscribeType, string userId, string messageTemplateId)
        {
            string sqlStr = @"select * from [dbo].[Sys_MemberSubscribeMsg]   where SubscribeUserId = '" + userId + "' and SubscribeType='" + subscribeType + "' and MessageTemplateId='" + messageTemplateId + "'";

            return(DapperConn.QueryFirstOrDefault <MemberMessageTemplatesOuputDto>(sqlStr));
        }
Exemple #15
0
        /// <summary>
        /// 根据用户手机号码查询用户信息
        /// </summary>
        /// <param name="mobilephone">手机号码</param>
        /// <returns></returns>
        public async Task <User> GetUserByMobilePhone(string mobilephone)
        {
            string sql = @"SELECT * FROM Sys_User t WHERE t.MobilePhone = @MobilePhone";

            return(await DapperConn.QueryFirstOrDefaultAsync <User>(sql, new { @MobilePhone = mobilephone }));
        }
Exemple #16
0
        /// <summary>
        /// 根据Email查询用户信息
        /// </summary>
        /// <param name="email">email</param>
        /// <returns></returns>
        public async Task <User> GetUserByEmail(string email)
        {
            string sql = @"SELECT * FROM Sys_User t WHERE t.Email = @Email";

            return(await DapperConn.QueryFirstOrDefaultAsync <User>(sql, new { @Email = email }));
        }
        /// <summary>
        /// 根据系统编码查询系统对象
        /// </summary>
        /// <param name="appkey">系统编码</param>
        /// <returns></returns>
        public SystemType GetByCode(string appkey)
        {
            string sql = @"SELECT * FROM " + this.tableName + " t WHERE t.EnCode = @EnCode";

            return(DapperConn.QueryFirstOrDefault <SystemType>(sql, new { EnCode = appkey }));
        }
Exemple #18
0
        /// <summary>
        /// 根据租户账号查询租户信息
        /// </summary>
        /// <param name="userName"></param>
        /// <returns></returns>
        public async Task <Tenant> GetByUserName(string userName)
        {
            string sql = $"SELECT * FROM {this.tableName} t WHERE t.TenantName = @TenantName";

            return(await DapperConn.QueryFirstOrDefaultAsync <Tenant>(sql, new { @TenantName = userName }));
        }
Exemple #19
0
        /// <summary>
        /// 根据微信UnionId查询用户信息
        /// </summary>
        /// <param name="unionId">UnionId值</param>
        /// <returns></returns>
        public User GetUserByUnionId(string unionId)
        {
            string sql = string.Format("select * from Sys_User where UnionId = '{0}'", unionId);

            return(DapperConn.QueryFirstOrDefault <User>(sql));
        }
Exemple #20
0
        /// <summary>
        /// 测试性能,建议删除
        /// </summary>
        /// <param name="len"></param>
        /// <returns></returns>
        public long InsertTset(int len)
        {
            int n = 0;

            var sb         = new StringBuilder(" EF 与Dapper常用方法性能分析 : \n");
            Log logEntity1 = new Log()
            {
                Id            = GuidUtils.GuId(),
                Date          = DateTime.Now,
                Account       = "admin",
                NickName      = "超级管理员",
                OrganizeId    = "2020101619392209546893",
                Type          = "SQL",
                IPAddress     = "171.110.40.191",
                IPAddressName = "中国广西壮族自治区玉林市",
                ModuleName    = "Log",
                Result        = true,
                Description   = "SQL语句:update Sys_Role set EnabledMark=1 ,LastModifyUserId='2020100517554098226223',LastModifyTime=@LastModifyTime where id in ('2019091721053342871332')",
                DeleteMark    = false,
                EnabledMark   = true,
                CreatorTime   = DateTime.Now,
                CreatorUserId = "9f2ec079-7d0f-4fe2-90ab-8b09a8302aba"
            };

            using (var content = new MySqlDbContext())
            {
                content.Add <Log>(logEntity1);;
            }
            Log logEntity2 = new Log()
            {
                Id            = GuidUtils.GuId(),
                Date          = DateTime.Now,
                Account       = "admin",
                NickName      = "超级管理员",
                OrganizeId    = "2020101619392209546893",
                Type          = "SQL",
                IPAddress     = "171.110.40.191",
                IPAddressName = "中国广西壮族自治区玉林市",
                ModuleName    = "Log",
                Result        = true,
                Description   = "SQL语句:update Sys_Role set EnabledMark=1 ,LastModifyUserId='2020100517554098226223',LastModifyTime=@LastModifyTime where id in ('2019091721053342871332')",
                DeleteMark    = false,
                EnabledMark   = true,
                CreatorTime   = DateTime.Now,
                CreatorUserId = "9f2ec079-7d0f-4fe2-90ab-8b09a8302aba"
            };
            Stopwatch stopwatch   = new Stopwatch();
            Stopwatch stopwatch1  = new Stopwatch();
            Stopwatch stopwatch2  = new Stopwatch();
            Stopwatch stopwatch3  = new Stopwatch();
            Stopwatch stopwatch4  = new Stopwatch();
            Stopwatch stopwatch5  = new Stopwatch();
            Stopwatch stopwatch6  = new Stopwatch();
            Stopwatch stopwatch7  = new Stopwatch();
            Stopwatch stopwatch8  = new Stopwatch();
            Stopwatch stopwatch9  = new Stopwatch();
            Stopwatch stopwatch10 = new Stopwatch();
            Stopwatch stopwatch11 = new Stopwatch();
            Stopwatch stopwatch12 = new Stopwatch();
            Stopwatch stopwatch13 = new Stopwatch();
            Stopwatch stopwatch14 = new Stopwatch();

            stopwatch.Start();

            //DapperConn.Insert<Log>(logEntity1);
            stopwatch.Stop();
            sb.Append("Dapper 单条数据插入Insert耗时:" + (stopwatch.ElapsedMilliseconds + "  毫秒\n"));
            stopwatch1.Start();
            Add(logEntity2);
            stopwatch1.Stop();
            sb.Append("EF  单条数据插入Add耗时:" + (stopwatch1.ElapsedMilliseconds + "  毫秒\n"));

            logEntity1.DeleteMark     = false;
            logEntity1.LastModifyTime = DateTime.Now;

            logEntity2.DeleteMark     = false;
            logEntity2.LastModifyTime = DateTime.Now;
            stopwatch2.Start();
            Update(logEntity1);
            stopwatch2.Stop();
            sb.Append("Dapper  单条数据更新Update耗时:" + (stopwatch2.ElapsedMilliseconds + "  毫秒\n"));
            stopwatch3.Start();
            Edit(logEntity2);
            stopwatch3.Stop();
            sb.Append("EF 单条数据更新Edit耗时:" + (stopwatch3.ElapsedMilliseconds + "  毫秒\n"));

            List <Log> logList = new List <Log>();

            List <Log> logList2 = new List <Log>();
            List <Log> logList3 = new List <Log>();
            List <Log> logList4 = new List <Log>();
            List <Log> logList5 = new List <Log>();

            while (n < len.ToInt())
            {
                Log logEntity = new Log()
                {
                    Id            = GuidUtils.GuId(),
                    Date          = DateTime.Now,
                    Account       = "admin",
                    NickName      = "超级管理员",
                    OrganizeId    = "2020101619392209546893",
                    Type          = "SQL",
                    IPAddress     = "171.110.40.191",
                    IPAddressName = "中国广西壮族自治区玉林市",
                    ModuleName    = "Log",
                    Result        = true,
                    Description   = "SQL语句:update Sys_Role set EnabledMark=1 ,LastModifyUserId='2020100517554098226223',LastModifyTime=@LastModifyTime where id in ('2019091721053342871332')",
                    DeleteMark    = false,
                    EnabledMark   = true,
                    CreatorTime   = DateTime.Now,
                    CreatorUserId = "9f2ec079-7d0f-4fe2-90ab-8b09a8302aba"
                };
                logList.Add(logEntity);
                Log logEntity3 = new Log()
                {
                    Id            = GuidUtils.GuId(),
                    Date          = DateTime.Now,
                    Account       = "admin",
                    NickName      = "超级管理员",
                    OrganizeId    = "2020101619392209546893",
                    Type          = "SQL",
                    IPAddress     = "171.110.40.191",
                    IPAddressName = "中国广西壮族自治区玉林市",
                    ModuleName    = "Log",
                    Result        = true,
                    Description   = "SQL语句:update Sys_Role set EnabledMark=1 ,LastModifyUserId='2020100517554098226223',LastModifyTime=@LastModifyTime where id in ('2019091721053342871332')",
                    DeleteMark    = false,
                    EnabledMark   = true,
                    CreatorTime   = DateTime.Now,
                    CreatorUserId = "9f2ec079-7d0f-4fe2-90ab-8b09a8302aba"
                };
                logList2.Add(logEntity3);
                Log logEntity4 = new Log()
                {
                    Id            = GuidUtils.GuId(),
                    Date          = DateTime.Now,
                    Account       = "admin",
                    NickName      = "超级管理员",
                    OrganizeId    = "2020101619392209546893",
                    Type          = "SQL",
                    IPAddress     = "171.110.40.191",
                    IPAddressName = "中国广西壮族自治区玉林市",
                    ModuleName    = "Log",
                    Result        = true,
                    Description   = "SQL语句:update Sys_Role set EnabledMark=1 ,LastModifyUserId='2020100517554098226223',LastModifyTime=@LastModifyTime where id in ('2019091721053342871332')",
                    DeleteMark    = false,
                    EnabledMark   = true,
                    CreatorTime   = DateTime.Now,
                    CreatorUserId = "9f2ec079-7d0f-4fe2-90ab-8b09a8302aba"
                };
                logList3.Add(logEntity4);
                Log logEntity5 = new Log()
                {
                    Id            = GuidUtils.GuId(),
                    Date          = DateTime.Now,
                    Account       = "admin",
                    NickName      = "超级管理员",
                    OrganizeId    = "2020101619392209546893",
                    Type          = "SQL",
                    IPAddress     = "171.110.40.191",
                    IPAddressName = "中国广西壮族自治区玉林市",
                    ModuleName    = "Log",
                    Result        = true,
                    Description   = "SQL语句:update Sys_Role set EnabledMark=1 ,LastModifyUserId='2020100517554098226223',LastModifyTime=@LastModifyTime where id in ('2019091721053342871332')",
                    DeleteMark    = false,
                    EnabledMark   = true,
                    CreatorTime   = DateTime.Now,
                    CreatorUserId = "9f2ec079-7d0f-4fe2-90ab-8b09a8302aba"
                };
                logList4.Add(logEntity5);
                Log logEntity6 = new Log()
                {
                    Id            = GuidUtils.GuId(),
                    Date          = DateTime.Now,
                    Account       = "admin",
                    NickName      = "超级管理员",
                    OrganizeId    = "2020101619392209546893",
                    Type          = "SQL",
                    IPAddress     = "171.110.40.191",
                    IPAddressName = "中国广西壮族自治区玉林市",
                    ModuleName    = "Log",
                    Result        = true,
                    Description   = "SQL语句:update Sys_Role set EnabledMark=1 ,LastModifyUserId='2020100517554098226223',LastModifyTime=@LastModifyTime where id in ('2019091721053342871332')",
                    DeleteMark    = false,
                    EnabledMark   = true,
                    CreatorTime   = DateTime.Now,
                    CreatorUserId = "9f2ec079-7d0f-4fe2-90ab-8b09a8302aba"
                };
                logList5.Add(logEntity6);
                n++;
            }

            string sql = "insert into Sys_Log ([Date], [Account], [NickName], [OrganizeId], [Type], [IPAddress], [IPAddressName], [ModuleId], [ModuleName], [Result], [Description], [DeleteMark], [EnabledMark], [CreatorTime], [CreatorUserId], [LastModifyTime], [LastModifyUserId], [DeleteTime], [DeleteUserId], [Id]) values (@Date, @Account, @NickName, @OrganizeId, @Type, @IPAddress, @IPAddressName, @ModuleId, @ModuleName, @Result, @Description, @DeleteMark, @EnabledMark, @CreatorTime, @CreatorUserId, @LastModifyTime, @LastModifyUserId, @DeleteTime, @DeleteUserId, @Id)";

            stopwatch4.Start();
            DbContext.BulkInsert <Log>(logList);
            stopwatch4.Stop();
            sb.Append("使用BulkInsert批量插入" + n + "条数据耗时:" + (stopwatch4.ElapsedMilliseconds + "  毫秒\n"));

            stopwatch5.Start();
            DbContext.AddRange <Log>(logList3);
            stopwatch5.Stop();
            sb.Append("EF 批量插入" + n + "条数据AddRange耗时:" + (stopwatch5.ElapsedMilliseconds + "  毫秒\n"));

            //stopwatch6.Start();
            //conn.Insert(logList4);
            //stopwatch6.Stop();
            //sb.Append("Dapper 批量插入" + n + "条数据Insert批量耗时:" + (stopwatch6.ElapsedMilliseconds + "  毫秒\n"));

            stopwatch7.Start();
            DapperConn.Execute(sql, logList5);
            stopwatch7.Stop();
            sb.Append("Dapper 批量插入" + n + "条数据ExecuteAsync耗时:" + (stopwatch7.ElapsedMilliseconds + "  毫秒\n"));

            List <Log> newlogList = new List <Log>();

            foreach (Log item in logList)
            {
                Log info = new Log();
                info = item;
                info.LastModifyTime = DateTime.Now;
                info.Description   += item.Description + item.Description + "更新数据";
                newlogList.Add(info);
            }
            Stopwatch stopwatch15 = new Stopwatch();

            stopwatch15.Start();
            // Update(newlogList);
            stopwatch15.Stop();
            sb.Append("Dapper批量更新" + n + "条数据Update耗时:" + (stopwatch15.ElapsedMilliseconds + "  毫秒\n"));
            stopwatch8.Start();
            DbContext.EditRange <Log>(newlogList);
            stopwatch8.Stop();
            sb.Append("EF 批量更新" + n + "条数据EditRange耗时:" + (stopwatch8.ElapsedMilliseconds + "  毫秒\n"));
            stopwatch9.Start();
            Get(logEntity1.Id);
            stopwatch9.Stop();
            sb.Append("Dapper 查询单个实体Get耗时:" + (stopwatch9.ElapsedMilliseconds + "  毫秒\n"));
            stopwatch10.Start();
            DbContext.GetDbSet <Log>().Find(logEntity1.Id);
            stopwatch10.Stop();
            sb.Append("Ef查询单个实体Find耗时:" + (stopwatch10.ElapsedMilliseconds + "  毫秒\n"));
            sql = $"select * from sys_Log where Id='" + logEntity1.Id + "'";
            stopwatch11.Start();
            DbContext.GetDbSet <Log>().FromSqlRaw <Log>(sql).FirstOrDefaultAsync <Log>();
            stopwatch11.Stop();
            sb.Append("Ef查询单个实体FromSqlRaw FirstOrDefaultAsync耗时:" + (stopwatch11.ElapsedMilliseconds + "  毫秒\n"));
            PagerInfo pagerInfo = new PagerInfo
            {
                CurrenetPageIndex = 1,
                PageSize          = 50
            };

            stopwatch12.Start();
            List <Log> list = FindWithPager("", pagerInfo, "CreatorTime", true);
            PageResult <LogOutputDto> pageResult = new PageResult <LogOutputDto>
            {
                CurrentPage  = pagerInfo.CurrenetPageIndex,
                Items        = list.MapTo <LogOutputDto>(),
                ItemsPerPage = pagerInfo.PageSize,
                TotalItems   = pagerInfo.RecordCount
            };

            stopwatch12.Stop();
            sb.Append("Dapper 分页查询耗时:" + (stopwatch12.ElapsedMilliseconds + "  毫秒\n"));
            stopwatch13.Start();

            List <Log> list2 = GetByPagination(m => true, pagerInfo, true).ToList <Log>();
            PageResult <LogOutputDto> pageResult2 = new PageResult <LogOutputDto>
            {
                CurrentPage  = pagerInfo.CurrenetPageIndex,
                Items        = list2.MapTo <LogOutputDto>(),
                ItemsPerPage = pagerInfo.PageSize,
                TotalItems   = pagerInfo.RecordCount
            };

            stopwatch13.Stop();
            sb.Append("EF 分页查询耗时:" + (stopwatch13.ElapsedMilliseconds + "  毫秒\n")); stopwatch.Start();

            sql = $"select * from Sys_log";
            string[] orderBys = { "CreatorTime desc" };
            stopwatch14.Start();
            PageResult <Log> list3 = DbContext.SqlQueryByPagination <Log>(sql, orderBys, 1, 50);

            //PageResult<LogOutputDto> pageResult2 = new PageResult<LogOutputDto>
            //{
            //    CurrentPage = pagerInfo.CurrenetPageIndex,
            //    Items = list2.MapTo<LogOutputDto>(),
            //    ItemsPerPage = pagerInfo.PageSize,
            //    TotalItems = pagerInfo.RecordCount
            //};
            stopwatch14.Stop();
            sb.Append("EF 分页查询耗时:" + (stopwatch14.ElapsedMilliseconds + "  毫秒\n"));
            Log4NetHelper.Info(sb.ToString());
            return(1);
        }
        //DapperConn 用于读写操作
        //DapperConnRead 用于只读操作

        /// <summary>
        /// 根据租户ID获取租户登录信息实体
        /// </summary>
        /// <param name="tenantId"></param>
        /// <returns></returns>
        public TenantLogon GetByTenantId(string tenantId)
        {
            string sql = $"SELECT * FROM {this.tableName} t WHERE t.TenantId = @TenantId";

            return(DapperConn.QueryFirst <TenantLogon>(sql, new { @TenantId = tenantId }));
        }