Пример #1
0
        public void Edit(CustomFieldModel viewModel, EducationSecurityPrincipal user)
        {
            if (viewModel == null)
            {
                throw new ArgumentNullException("viewModel");
            }
            if (user == null)
            {
                throw new ArgumentNullException("user");
            }
            var model = CustomFieldRepository.Items.Include(c => c.Categories).SingleOrDefault(c => c.Id == viewModel.Id);

            if (model == null)
            {
                throw new EntityNotFoundException("The requested custom field could not be found");
            }
            if (CustomFieldValueRepository.Items.Any(v => v.CustomFieldId == viewModel.Id) && model.CustomFieldTypeId != viewModel.SelectedFieldTypeId)
            {
                throw new ValidationException(new ValidationResult("Cannot edit field type because data values have already been loaded", new[] { "SelectedFieldTypeId" }), null, viewModel);
            }
            viewModel.CopyTo(model);
            model.LastModifyingUser = user.Identity.User;
            model.LastModifyTime    = DateTime.Now;
            model.Categories        = CustomFieldCategoryRepository.Items.Where(c => viewModel.SelectedCategories.Contains(c.Id)).ToList();
            CustomFieldRepository.Update(model);
            RepositoryContainer.Save();
        }
Пример #2
0
        public void Create(CustomFieldModel viewModel, EducationSecurityPrincipal user)
        {
            if (viewModel == null)
            {
                throw new ArgumentNullException("viewModel");
            }
            if (user == null)
            {
                throw new ArgumentNullException("user");
            }
            CustomField item = CreateFieldEntity();

            viewModel.CopyTo(item);
            item.Categories = CustomFieldCategoryRepository.Items.Where(c => viewModel.SelectedCategories.Contains(c.Id)).ToList();
            if (item.Categories.Count != viewModel.SelectedCategories.Count())
            {
                throw new EntityNotFoundException("At least one selected category could not be found.");
            }
            item.CreatingUserId = user.Identity.UserEntity.Id;
            CustomFieldRepository.Add(item);
            RepositoryContainer.Save();
        }
 public void Edit(CustomFieldModel viewModel, EducationSecurityPrincipal user)
 {
     if (viewModel == null)
     {
         throw new ArgumentNullException("viewModel");
     }
     if (user == null)
     {
         throw new ArgumentNullException("user");
     }
     var model = CustomFieldRepository.Items.Include(c => c.Categories).SingleOrDefault(c => c.Id == viewModel.Id);
     if (model == null)
     {
         throw new EntityNotFoundException("The requested custom field could not be found");
     }
     if (CustomFieldValueRepository.Items.Any(v => v.CustomFieldId == viewModel.Id) && model.CustomFieldTypeId != viewModel.SelectedFieldTypeId)
     {
         throw new ValidationException(new ValidationResult("Cannot edit field type because data values have already been loaded", new[] { "SelectedFieldTypeId" }), null, viewModel);
     }
     viewModel.CopyTo(model);
     model.LastModifyingUser = user.Identity.User;
     model.LastModifyTime = DateTime.Now;
     model.Categories = CustomFieldCategoryRepository.Items.Where(c => viewModel.SelectedCategories.Contains(c.Id)).ToList();
     CustomFieldRepository.Update(model);
     RepositoryContainer.Save();
 }
 public void Create(CustomFieldModel viewModel, EducationSecurityPrincipal user)
 {
     if (viewModel == null)
     {
         throw new ArgumentNullException("viewModel");
     }
     if (user == null)
     {
         throw new ArgumentNullException("user");
     }
     CustomField item = CreateFieldEntity();
     viewModel.CopyTo(item);
     item.Categories = CustomFieldCategoryRepository.Items.Where(c => viewModel.SelectedCategories.Contains(c.Id)).ToList();
     if (item.Categories.Count != viewModel.SelectedCategories.Count())
     {
         throw new EntityNotFoundException("At least one selected category could not be found.");
     }
     item.CreatingUserId = user.Identity.UserEntity.Id;
     CustomFieldRepository.Add(item);
     RepositoryContainer.Save();
 }