Пример #1
0
        /// <summary>
        /// Factory methid for FolderViewModel.
        /// </summary>
        /// <param name="context"></param>
        /// <param name="fullPath"></param>
        /// <returns></returns>
        public static FolderViewModel Create(FolderTreeEntities context, string fullPath)
        {
            string enterFolderName = null;

            if (fullPath != null)
            {
                enterFolderName = fullPath.Split('/').LastOrDefault();
            }

            var folder = context.Folder
                         .FirstOrDefault(f => f.folder_name == enterFolderName);

            var model = new FolderViewModel();

            if (folder != null)
            {
                model.CurrentFolder = folder.folder_name;
                model.ChildFolders  = context.Folder.Where(f => f.parent_id == folder.id).ToList();
            }
            else
            {
                model.CurrentFolder = "";
                model.ChildFolders  = context.Folder
                                      .Where(f => f.parent_id == 0)
                                      .ToList();
            }

            return(model);
        }
        /// <summary>
        /// Creates Friendly Url for folder.
        /// </summary>
        /// <param name="urlHelper"></param>
        /// <param name="folder"></param>
        /// <returns>Folder's Friendly Url</returns>
        public static string CreateFolderUrl(this UrlHelper urlHelper, Folder folder)
        {
            var    ctx  = new FolderTreeEntities();
            string path = folder.folder_name;

            if (folder.parent_id == 0)
            {
                return(urlHelper.Action("ShowFolders", "Home", new
                {
                    fullPath = path
                }));
            }

            do
            {
                folder = ctx.Folder.FirstOrDefault(f => f.id == folder.parent_id);
                path   = $"{folder?.folder_name}{"/"}{path}";
            }while (folder.parent_id != 0);

            return(urlHelper.Action("ShowFolders", "Home", new
            {
                fullPath = path
            }));
        }
Пример #3
0
 public BaseRepository(FolderTreeEntities context)
 {
     dbContext = context;
 }
Пример #4
0
 public BaseRepository()
 {
     dbContext = new FolderTreeEntities();
 }
Пример #5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HomeController"/>
 /// </summary>
 public HomeController()
 {
     _context = new FolderTreeEntities();
 }
Пример #6
0
 public RepositoryProvider()
 {
     dbContext = new FolderTreeEntities();
 }
 public TreeNodeRepository(FolderTreeEntities context) : base(context)
 {
 }