Пример #1
0
        public override void ExpandView(MixCmsContext _context = null, IDbContextTransaction _transaction = null)
        {
            var getPost = MixAttributeSetDatas.ReadViewModel.Repository.GetSingleModel(
                m => m.Id == Id && m.Specificulture == Specificulture
                , _context: _context, _transaction: _transaction);

            if (getPost.IsSucceed)
            {
                this.RelatedAttributeData = getPost.Data;
            }
        }
Пример #2
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);
        }