Пример #1
0
        public void LoadPage(MixCmsContext _context = null, IDbContextTransaction _transaction = null)
        {
            var getPage = MixPages.ReadViewModel.Repository.GetSingleModel(p => p.Id == PageId && p.Specificulture == Specificulture
                                                                           , _context: _context, _transaction: _transaction
                                                                           );

            if (getPage.IsSucceed)
            {
                Page = getPage.Data;
            }
        }
Пример #2
0
        public override void ExpandView(MixCmsContext _context = null, IDbContextTransaction _transaction = null)
        {
            var getPost = MixPosts.ReadListItemViewModel.Repository.GetSingleModel(p => p.Id == PostId && p.Specificulture == Specificulture
                                                                                   , _context: _context, _transaction: _transaction
                                                                                   );
            var getPage = MixPages.ReadViewModel.Repository.GetSingleModel(p => p.Id == PageId && p.Specificulture == Specificulture
                                                                           , _context: _context, _transaction: _transaction
                                                                           );

            if (getPost.IsSucceed)
            {
                Post = getPost.Data;
            }
            if (getPage.IsSucceed)
            {
                Page = getPage.Data;
            }
        }
Пример #3
0
        public override List <Task> GenerateRelatedData(MixCmsContext context, IDbContextTransaction transaction)
        {
            var tasks = new List <Task>();
            // Remove parent Pages
            var relatedPages = context.MixPage.Where(m => m.MixPageModule
                                                     .Any(d => d.Specificulture == Specificulture && (d.ModuleId == Id)));

            foreach (var item in relatedPages)
            {
                tasks.Add(Task.Run(() =>
                {
                    var data = new MixPages.ReadViewModel(item, context, transaction);
                    data.RemoveCache(item, context, transaction);
                }));
            }

            return(tasks);
        }
Пример #4
0
        public override List <Task> GenerateRelatedData(MixCmsContext context, IDbContextTransaction transaction)
        {
            var tasks = new List <Task>();

            // MixEnums.MixAttributeSetDataType
            switch (ParentType)
            {
            case 0:
            case 1:
            case 5:
                var attrDatas = context.MixAttributeSetData.Where(m => m.Specificulture == Specificulture && m.Id == ParentId);
                foreach (var item in attrDatas)
                {
                    tasks.Add(Task.Run(() =>
                    {
                        var updModel = new MixAttributeSetDatas.ReadViewModel(item, context, transaction);
                        updModel.GenerateCache(item, updModel);
                    }));
                }
                break;

            case 2:
                int.TryParse(ParentId, out int postId);
                var post = context.MixPost.First(m => m.Specificulture == Specificulture && m.Id == postId);
                if (post != null)
                {
                    tasks.Add(Task.Run(() =>
                    {
                        var updModel = new MixPosts.ReadViewModel(post, context, transaction);
                        updModel.GenerateCache(post, updModel);
                    }));
                }
                break;

            case 3:
                int.TryParse(ParentId, out int pageId);
                var page = context.MixPage.First(m => m.Specificulture == Specificulture && m.Id == pageId);
                if (page != null)
                {
                    tasks.Add(Task.Run(() =>
                    {
                        var updModel = new MixPages.ReadViewModel(page, context, transaction);
                        updModel.GenerateCache(page, updModel);
                    }));
                }
                break;

            case 4:
                int.TryParse(ParentId, out int moduleId);
                var module = context.MixModule.First(m => m.Specificulture == Specificulture && m.Id == moduleId);
                if (module != null)
                {
                    tasks.Add(Task.Run(() =>
                    {
                        var updModel = new MixModules.ReadListItemViewModel(module, context, transaction);
                        updModel.GenerateCache(module, updModel);
                    }));
                }
                break;

            default:
                break;
            }
            return(tasks);
        }