public async Task <SearchResult <List <dynamic> > > GetQueryResult(DapperClient dapperClient, ConditionBase conditionBase)
        {
            var result = new SearchResult <List <dynamic> >();

            try
            {
                var sqlCount = @"WITH CTE AS  ( [[CTE_SQL]] )
            SELECT COUNT(*) FROM CTE";
                var sql      = @"WITH CTE AS ( [[CTE_SQL]] )
            SELECT  *
            FROM (
                    SELECT ROW_NUMBER() OVER ([[ORDERBY]]) AS RowNumber,* FROM CTE
                )   as A
            WHERE RowNumber > [[PAGESIZE]]*([[PAGEINDEX]]-1) and RowNumber <= [[PAGESIZE]]*([[PAGEINDEX]]) [[ORDERBY]]";
                sqlCount = sqlCount.Replace("[[CTE_SQL]]", conditionBase.Sql);

                sql = sql.Replace("[[CTE_SQL]]", conditionBase.Sql);
                sql = sql.Replace("[[ORDERBY]]", "order by " + conditionBase.OrderBy + " " + conditionBase.OrderSequence);
                sql = sql.Replace("[[PAGEINDEX]]", conditionBase.PageIndex.ToString());
                sql = sql.Replace("[[PAGESIZE]]", conditionBase.PageSize.ToString());
                var respositoryResult = await dapperClient.Query <dynamic>(sql).ToListAsync();

                var respositorycount = dapperClient.ExecuteScalar <int>(sqlCount);
                result.Status = ResultConfig.Ok;
                result.Info   = ResultConfig.SuccessfulMessage;
                result.Rows   = respositoryResult;
                result.Total  = respositorycount;
            }
            catch (Exception ex)
            {
                result.Status = ResultConfig.Fail;
                result.Info   = ex.Message;
            }
            return(result);
        }
示例#2
0
        //public ActivityWebController(IDapperFactory dapperFactory, Sys_MenuService _menservice, ActivityService _service, IWebHostEnvironment _webHostEnvironment)
        ////: base("CAA298AC-104E-4D31-A303-08D7FBCAC280", _menservice, _service)
        //{
        //    this.webHostEnvironment = _webHostEnvironment;
        //    this.webRootPath = _webHostEnvironment.WebRootPath;
        //    //appsettings.json 和  Startup 下配置多个连接字符串
        //    //这样可以操作多个数据库
        //    dapper = dapperFactory.CreateClient("MSSQL1");
        //}

        public ActivityWebController(IDapperFactory dapperFactory, Sys_MenuService _menservice, ActivityService _service, IWebHostEnvironment _webHostEnvironment)
        {
            this.webHostEnvironment = _webHostEnvironment;
            this.webRootPath        = _webHostEnvironment.WebRootPath;
            //appsettings.json 和  Startup 下配置多个连接字符串
            //这样可以操作多个数据库
            dapper = dapperFactory.CreateClient("MSSQL1");
        }
 //todo
 //公司里要换 guid = CAA298AC - 104E-4D31-A303-08D7FBCAC280   DD9552F6-F439-47D8-6DE5-08D7FEE48E60
 /// <summary>
 ///
 /// </summary>
 /// <param name="dapperFactory"></param>
 /// <param name="_menservice"></param>
 /// <param name="_service"></param>
 /// <param name="_webHostEnvironment"></param>
 public ActivityController(IDapperFactory dapperFactory, Sys_MenuService _menservice, ActivityService _service, IWebHostEnvironment _webHostEnvironment)
     : base("997BBD74-DD6D-41A9-A304-08D7FBCAC280", _menservice, _service)
 {
     this.webHostEnvironment = _webHostEnvironment;
     this.webRootPath        = _webHostEnvironment.WebRootPath;
     //appsettings.json 和  Startup 下配置多个连接字符串
     //这样可以操作多个数据库
     dapper = dapperFactory.CreateClient("MSSQL1");
 }
示例#4
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllers();
            //services.AddDapper("mysql", m =>
            //{
            //    m.ConnectionString = Configuration.GetConnectionString("DefaultConnection");
            //    m.DbType = DbStoreType.MySql;
            //});
            ////连接Oracle
            //services.AddDapper("OracleConnection", m =>
            //{
            //    m.ConnectionString = Configuration.GetConnectionString("OracleConnectionString");
            //    m.DbType = DbStoreType.Oracle;
            //});
            var connets = Configuration.GetSection("DbConnedtions").GetChildren();
            var dbDic   = new Dictionary <string, DapperClient>();

            foreach (var item in connets)
            {
                string           name   = item.GetSection("name").Value;
                string           type   = item.GetSection("dbtype").Value;
                string           constr = item.GetSection("connectstring").Value;
                ConnectionConfig conf   = new ConnectionConfig();
                conf.ConnectionString = constr;
                switch (type.ToLower())
                {
                case "mysql":
                    conf.DbType = DbStoreType.MySql;
                    break;

                case "oracle":
                    conf.DbType = DbStoreType.Oracle;
                    break;

                case "sqlite":
                    conf.DbType = DbStoreType.Sqlite;
                    break;

                case "sqlserver":
                    conf.DbType = DbStoreType.SqlServer;
                    break;
                }
                DapperClient client = new DapperClient(conf);
                dbDic.Add(name, client);
            }
            services.AddClient(dbDic);
        }
        //private IDapper _dapper;

        //public ActivityWebService(IDapperFactory dapperFactory, IConfiguration configuration, DapperClient dapper)
        //{
        //    _configuration = configuration;
        //    //_factory = DapperFactory.GetInstance(configuration);
        //    _dapper = dapper;
        //}
        public ActivityWebService(IDapperFactory dapperFactory, EFCoreContext _db, DefaultRepository <Sys_User> _userDb)
            : base(_db)
        {
            this.userDb = _userDb;
            dapper      = dapperFactory.CreateClient("MSSQL1");
        }
 public MieShenEveryController(ICommonRespository _commonRespository, IDapperFactory dapperFactory)
 {
     CommonRespository = _commonRespository;
     _SqlDB            = dapperFactory.CreateClient("SqlDb");
 }
示例#7
0
 public OracleController(IDapperFactory dapperFactory)
 {
     _client = dapperFactory.CreateClient("OracleDB");
 }
示例#8
0
 public WeatherForecastController(ILogger <WeatherForecastController> logger, IDapperClientFactory dapperFactory)
 {
     _logger = logger;
     System.Console.WriteLine(dapperFactory);
     mysql = dapperFactory.GetClient("mysql1");
 }
 public MSSQLController(IDapperFactory dapperFactory)
 {
     _client = dapperFactory.CreateClient("MSSqlDB");
 }
示例#10
0
 public TestController(IDapperFactory dapperFactory)
 {
     //_OracleDB = dapperFactory.CreateClient("OracleConnection");
     _SqlDB = dapperFactory.CreateClient("YZFConnection");
 }
示例#11
0
        public TeacherController(SchoolsDBContext dbContext, IDapperFactory dapperFactory)
        {
            _dbContext = dbContext;

            _SqlDB = dapperFactory.CreateClient("SqlDb");
        }