/// <summary>
        /// Get the Resume experience jobs for a particular resume experience page
        /// </summary>
        /// <param name="page">Page to get the jobs for (can include just ImageWallId, but must included that)</param>
        /// <returns>Collection of jobs for the specified page</returns>
        public async Task <ICollection <BusinessModels.ResumeExpJob> > GetFromPage(BusinessModels.ResumeExpPage page)
        {
            ICollection <BusinessModels.ResumeExpJob> ret;

            if (page.ResumeExpPageOrigin != null)
            {
                ret = (from job in page.ResumeExpPageOrigin.Jobs
                       select ParseJob(job)).ToList();
            }
            else
            {
                ret = await(from job in DbContext.ResumeExpJobs
                            where job.PageId == page.ResumeExpId
                            select ParseJob(job)).ToListAsync();
            }

            return(ret);
        }
示例#2
0
        /// <summary>
        /// Parse a Resume Experience page
        /// </summary>
        /// <param name="page">Resume Experience page to parse</param>
        /// <returns>A parsed Resume Experience page</returns>
        private async Task <BusinessModels.ResumeExpPage> ParseResumeExpPage(
            DbModels.Page page)
        {
            var retPage = new BusinessModels.ResumeExpPage()
            {
                PageOrigin          = page,
                Id                  = page.Id,
                Type                = BusinessModels.PageTypes.ResumeExp,
                Title               = page.Title,
                Subtitle            = page.Subtitle,
                Background          = page.Background,
                Image               = null,
                Orientation         = page.Orientation,
                ResumeExpPageOrigin = page.ResumeExpExt,
                ResumeExpId         = page.ResumeExpExt.Id
            };

            retPage.Jobs = await ResumeExpJobsService.GetFromPage(retPage);

            return(retPage);
        }