Esempio n. 1
0
        public async Task <PageViewModel> CreatePageAsync(PageViewModel pageViewModel)
        {
            if (pageViewModel == null)
            {
                throw new ArgumentNullException(nameof(pageViewModel));
            }

            var date = DateTime.UtcNow;
            var page = new Page
            {
                Name        = pageViewModel.Name,
                Url         = pageViewModel.Url,
                OrderIndex  = pageViewModel.OrderIndex,
                DateCreated = date,
                LastUpdate  = date,
                Active      = pageViewModel.Active
            };

            var cultures = await _cultureStore.GetCultures();

            var contents = new List <Content>();

            foreach (var culture in cultures)
            {
                contents.Add(
                    new Content
                {
                    Text        = culture.Language,
                    DateCreated = date,
                    LastUpdate  = date,
                    Page        = page,
                    CultureId   = culture.Id
                }
                    );
            }
            page = await _pageStore.CreatePageAsync(page, contents);

            var result = _mapper.Map <PageViewModel>(page);

            return(result);
        }