Exemple #1
0
 public virtual Dictionary<string, object> GetRouteData(EPages page)
 {
     Dictionary<string, object> routeData = new Dictionary<string, object>();
     routeData.Add("area", this.Area);
     routeData.Add("controller", this.Controller);
     routeData.Add("action", this.Action);
     routeData.Add("Namespaces", this.Namespaces);
     routeData.Add("pagesId",page.Id);
     var @params = page.PagesQueryString.ParseQueryString();
     foreach (var param in @params) 
     { 
         routeData.Add(param.Key, param.Value); 
     }
     return routeData;
 }
Exemple #2
0
 public void SavePagesHtmlContent(int pagesId, string htmlContent)
 {
     var pages = new EPages() { PagesHtmlContent = htmlContent };
     _rep.Save(pages, p => p.Id == pagesId, p => new Columns(p.PagesHtmlContent));
     _cacheService.RemoveByKey(CacheKey.Cms_Pages_All);
     _cacheService.RemoveByKey(CacheKey.Cms_Pages_Static_Html.GetFormat(pagesId));
 }
Exemple #3
0
 /// <summary>
 /// 递归获取页面集合结构
 /// </summary>
 /// <param name="root"></param>
 private void GetSubPagesListByRecursion(EPages root, List<EPages> list)
 {
     //获取下一级菜单
     var children = GetAllPagesFromCache().Where(p => p.PagesParentId == root.Id).OrderByDescending(p => p.PagesOrderId).ToList();
     if (children.Count > 0)
     {
         list.AddRange(children);
         foreach (var sub in children)
         {
             GetSubPagesListByRecursion(sub, list);
         }
     }
 }
Exemple #4
0
 /// <summary>
 /// 递归获取页面集合结构
 /// </summary>
 /// <param name="root"></param>
 /// <param name="allPagesList"></param>
 private void GetSubPagesListByRecursion(EPages root, List<EPages> list, List<EPages> allPagesList)
 {
     //获取下一级菜单
     var children = allPagesList.Where(p => p.PagesParentId == root.Id).ToList();
     if (children.Count > 0)
     {
         list.AddRange(children);
         foreach (var sub in children)
         {
             GetSubPagesListByRecursion(sub, list, allPagesList);
         }
     }
 }
Exemple #5
0
 /// <summary>
 /// 递归获取页面树结构
 /// </summary>
 /// <param name="root"></param>
 /// <param name="allPagesList"></param>
 private void GetPagesTreeByRecursion(EPages root, List<EPages> allPagesList)
 {
     //获取下一级菜单
     var children = allPagesList.Where(p => p.PagesParentId == root.Id).OrderBy(p => p.PagesOrderId).ToList();
     if (children.Count > 0)
     {
         root.Children = children;
         foreach (var sub in root.Children)
         {
             GetPagesTreeByRecursion(sub, allPagesList);
         }
     }
 }
Exemple #6
0
 /// <summary>
 /// 获取路由地址
 /// </summary>
 /// <returns></returns>
 private string GetPageUrl(EPages page)
 {
     string url = page.PagesUrl;
     if (url.HasValue() && url.StartsWith("/"))
     {
         url = url.Substring(1);
     }
     return url;
 }
Exemple #7
0
 /// <summary>
 /// 获取路由域名
 /// </summary>
 /// <returns></returns>
 private string GetDomain(EPages page)
 {
     return page.PagesDomain;
 }
Exemple #8
0
 /// <summary>
 /// 递归获取页面树结构
 /// </summary>
 /// <param name="root"></param>
 /// <param name="allPagesCategorys"></param>
 private void GetPagesTreeByRecursion(EPages root)
 {
     //获取下一级菜单
     var children = GetAllPagesFromCache().Where(p => p.PagesParentId == root.Id).OrderByDescending(p => p.PagesOrderId).ToList();
     if (children.Count > 0)
     {
         root.Children = children;
         foreach (var sub in root.Children)
         {
             GetPagesTreeByRecursion(sub);
         }
     }
 }
Exemple #9
0
 /// <summary>
 /// 创建二级域名路由
 /// </summary>
 /// <param name="page"></param>
 /// <returns></returns>
 private DomainRoute CreateDomainRoute(EPages page)
 {
     var pageHandler = Cdev.Infrastructure.CdevContainer.Ins.Resolve<BasePagesHandler>(page.PagesHandler);
     var route = new DomainRoute(
       this.GetDomain(page),
       this.GetPageUrl(page),
       new RouteValueDictionary(pageHandler.GetRouteData(page))
     );
     return route;
 }
Exemple #10
0
 /// <summary>
 /// 保存页面
 /// </summary>
 /// <param name="page"></param>
 public void SavePages(EPages page)
 {
     _rep.Save(page, p => p.Id == page.Id);
     _cacheService.RemoveByKey(CacheKey.Cms_Pages_All);
     _cacheService.RemoveByKey(CacheKey.Cms_Pages_Static_Html.GetFormat(page.Id));
     ReRegisterMapRoute();
 }
Exemple #11
0
 /// <summary>
 /// 递归获取页面集合结构
 /// </summary>
 /// <param name="pagesId"></param>
 public IList<EPages> GetSubPagesFromCache(int? pagesId)
 {
     List<EPages> list = new List<EPages>();
     if (pagesId.HasValue)
     {
         EPages root = GetPagesByIdFromCache(pagesId.Value);
         GetSubPagesListByRecursion(root, list);
         return list;
     }
     else
     {
         EPages root = new EPages() { Id = pagesId ?? 0, PagesName = "页面" };
         IList<EPages> allPagesList = GetAllPagesFromCache();
         GetSubPagesListByRecursion(root, allPagesList.ToList());
         return list;
     }
 }
Exemple #12
0
 /// <summary>
 /// 获取页面树结构
 /// </summary>
 /// <returns></returns>
 public EPages GetPagesTreeByIdFromCache(int? pagesId)
 {
     if (pagesId.HasValue)
     {
         EPages root = GetPagesByIdFromCache(pagesId.Value);
         GetPagesTreeByRecursion(root);
         return root;
     }
     else
     {
         EPages root = new EPages() { Id = pagesId ?? 0, PagesName = "页面" };
         IList<EPages> allPagesList = GetAllPagesFromCache();
         GetPagesTreeByRecursion(root, allPagesList.ToList());
         return root;
     }
 }
Exemple #13
0
 /// <summary>
 /// 添加页面
 /// </summary>
 /// <param name="page"></param>
 public void AddPages(EPages page)
 {
     _rep.Add(page);
     _cacheService.RemoveByKey(CacheKey.Cms_Pages_All);
     ReRegisterMapRoute();
 }