示例#1
0
        public async Task <MessageModel <ResponseEnum> > Get()
        {
            var data = new MessageModel <ResponseEnum>();

            var i = 0;
            var d = 3 / i;

            var blogArticles = await _blogArticleServices.GetBlogs();

            var roleModulePermissions = await _roleModulePermissionServices.QueryMuchTable();

            var roleModuleTask = _roleModulePermissionServices.Query();
            var listTask       = _advertisementServices.Query();

            var ad   = await roleModuleTask;
            var list = await listTask;


            _advertisementServices.ReturnExp();

            Love love = null;

            love.SayLoveU();

            return(data);
        }
示例#2
0
        public async Task <MessageModel <ResponseEnum> > Get()
        {
            var data = new MessageModel <ResponseEnum>();

            /*
             *  测试 sql 查询
             */
            var queryBySql = await _blogArticleServices.QuerySql("SELECT bsubmitter,btitle,bcontent,bCreateTime FROM BlogArticle WHERE bID>5");

            /*
             *  测试按照指定列查询
             */
            var queryByColums = await _blogArticleServices
                                .Query <BlogViewModels>(it => new BlogViewModels()
            {
                btitle = it.btitle
            });

            /*
             *  测试 sql 更新
             *
             * 【SQL参数】:@bID:5
             *  @bsubmitter:laozhang619
             *  @IsDeleted:False
             * 【SQL语句】:UPDATE `BlogArticle`  SET
             *  `bsubmitter`=@bsubmitter,`IsDeleted`=@IsDeleted  WHERE `bID`=@bID
             */
            var updateSql = await _blogArticleServices.Update(new { bsubmitter = $"laozhang{DateTime.Now.Millisecond}", IsDeleted = false, bID = 5 });


            // 测试模拟异常,全局异常过滤器拦截
            var i = 0;
            var d = 3 / i;


            // 测试 AOP 缓存
            var blogArticles = await _blogArticleServices.GetBlogs();


            // 测试多表联查
            var roleModulePermissions = await _roleModulePermissionServices.QueryMuchTable();


            // 测试多个异步执行时间
            var roleModuleTask = _roleModulePermissionServices.Query();
            var listTask       = _advertisementServices.Query();
            var ad             = await roleModuleTask;
            var list           = await listTask;


            // 测试service层返回异常
            _advertisementServices.ReturnExp();

            return(data);
        }
        //[Authorize(Policy = "SystemOrAdmin")]
        //[ApiExplorerSettings(GroupName = "V1")]
        //[CustomRoute(ApiVersions.V2, "Get")]
        public async Task <PageModel <BlogArticle> > Get(int id, int page = 1)
        {
            //每页大小
            var pageSize = 10;
            //var connect = Appsettings.app(new string[] { "AppSettings", "RedisCaching", "ConnectionString" });//按照层级的顺序,依次写出来
            List <BlogArticle> blogArticleList = new List <BlogArticle>();

            blogArticleList = await _blogArticleServices.GetBlogs();

            // 你可以用这种包括的形式
            using (MiniProfiler.Current.Step("开始加载数据:"))
            {
                //先查找Redis缓存中有没有这个数据,有就直接带出来,不需要做DB操作,没有的话更新缓存,缓存时间为2小时
                if (_redisCacheManager.Get <object>("Redis.Blog") != null)
                {
                    // 也可以直接这么写
                    MiniProfiler.Current.Step("从Redis服务器中加载数据:");
                    blogArticleList = _redisCacheManager.Get <List <BlogArticle> >("Redis.Blog");
                }
                else
                {
                    // 也可以直接这么写
                    MiniProfiler.Current.Step("从MSSQL服务器中加载数据:");
                    blogArticleList = await _blogArticleServices.GetBlogs();

                    _redisCacheManager.Set("Redis.Blog", blogArticleList, TimeSpan.FromHours(2));//缓存2小时
                }
                MiniProfiler.Current.Step("处理成功之后,开始处理最终数据:");
                var pageModel = new PageModel <BlogArticle>
                {
                    page      = page,
                    pageCount = (blogArticleList.Count + pageSize - 1) / pageSize,
                    dataCount = blogArticleList.Count,
                    PageSize  = pageSize,
                    data      = blogArticleList.Skip((page - 1) * pageSize).Take(pageSize).ToList(),
                    success   = true
                };
                //blogArticleList = await _blogArticleServices.GetBlogs();
                //_redisCacheManager.Set("Redis.Blog", blogArticleList, TimeSpan.FromHours(2));//缓存2小时
                return(pageModel);
            }
        }
示例#4
0
        public async Task <MessageModel <ResponseEnum> > Get()
        {
            var data = new MessageModel <ResponseEnum>();

            await _redisBasketRepository.ListLeftPushAsync(RedisMqKey.Loging, "xxxxxxxxxxxxxxxxxxx");

            /*
             *  测试 sql 查询
             */
            var queryBySql = await _blogArticleServices.QuerySql("SELECT bsubmitter,btitle,bcontent,bCreateTime FROM BlogArticle WHERE bID>5");


            /*
             *  测试 sql 更新
             *
             * 【SQL参数】:@bID:5
             *  @bsubmitter:laozhang619
             *  @IsDeleted:False
             * 【SQL语句】:UPDATE `BlogArticle`  SET
             *  `bsubmitter`=@bsubmitter,`IsDeleted`=@IsDeleted  WHERE `bID`=@bID
             */
            var updateSql = await _blogArticleServices.Update(new { bsubmitter = $"laozhang{DateTime.Now.Millisecond}", IsDeleted = false, bID = 5 });


            // 测试模拟异常,全局异常过滤器拦截
            var i = 0;
            var d = 3 / i;


            // 测试 AOP 缓存
            var blogArticles = await _blogArticleServices.GetBlogs();


            // 测试多表联查
            var roleModulePermissions = await _roleModulePermissionServices.QueryMuchTable();


            // 测试多个异步执行时间
            var roleModuleTask = _roleModulePermissionServices.Query();
            var listTask       = _advertisementServices.Query();
            var ad             = await roleModuleTask;
            var list           = await listTask;


            // 测试service层返回异常
            _advertisementServices.ReturnExp();

            Love love = null;

            love.SayLoveU();

            return(data);
        }
        public async Task <List <BlogArticle> > GetBlogs()
        {
            // 获取配置信息
            var con = _options.Value.RedisCaching.ConnectionString;
            // var connect = AppsettingsHelper.app(new string[] { "AppSettings", "RedisCaching", "ConnectionString" });
            List <BlogArticle> blogArticles = new List <BlogArticle>();

            if (_redisCacheManager.Get <object>("Redis.Blog") != null)
            {
                blogArticles = _redisCacheManager.Get <List <BlogArticle> >("Redis.Blog");
            }
            else
            {
                blogArticles = await _blogArticleServices.GetBlogs();

                _redisCacheManager.Set("Redis.Blog", blogArticles, TimeSpan.FromHours(2));
            }
            return(blogArticles);
        }
示例#6
0
        public async Task <IActionResult> GetBlogs()
        {
            //var claims = User.Claims; //存的是token中的payload data

            //HttpContext.RequestServices  //请求服务,生命周期随着请求的结束而结束

            //var blogs = new List<BlogArticle>();
            //if (_redisCacheManager.Get<object>("Redis.Blog") != null)
            //{
            //    blogs = _redisCacheManager.Get<List<BlogArticle>>("Redis.Blog");
            //}
            //else
            //{
            //    blogs = await _blogArticleServices.GetBlogs();
            //    _redisCacheManager.Set<List<BlogArticle>>("Redis.Blog", blogs, TimeSpan.FromHours(2));
            //}
            var blogs = await _blogArticleServices.GetBlogs();

            return(Ok(blogs));
        }
示例#7
0
        public async void Get_Blogs_Test()
        {
            var data = await blogArticleServices.GetBlogs();

            Assert.True(data.Any());
        }
示例#8
0
 public async Task <List <BlogArticle> > GetBlogs()
 {
     return(await _dal.GetBlogs());
 }