private CategoryViewModel ConvertFromCategoryToCategoryViewModel(Category c) { return new CategoryViewModel() { Id = c.CategoryId, Name = c.Name, CreatedDate = c.CreatedDate, UpdatedDate = c.UpdatedDate, Active = c.Active, ParentCategoryId = (c.ParentCategory == null) ? null : c.ParentCategoryId, Description = c.Description }; }
/// <summary> /// получение категории со списком категорий (для выбора родительской) , для передачи его в форму добавления/редактирования /// </summary> /// <param name="Id">Id категории для редактирования</param> /// <returns></returns> public CategoryViewModelForAddEditView GetCategoryWithCategorys(int? Id) { CategoryViewModelForAddEditView categoryView = new CategoryViewModelForAddEditView(); if (Id == null) { //для возможности не выбирать категорию Category noCategory = new Category { CategoryId = 0, Name = "------------Отсутствует----------", Active = true, CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now }; var listCategorys = categoryRepository.Get().ToList<Category>(); listCategorys.Add(noCategory); categoryView.Categorys = new SelectList(listCategorys, "CategoryId", "Name", 0); } else { var category = categoryRepository.Get(Id.Value); if (category != null) { categoryView = ConvertToCategoryViewModelForAddEditView(category); //для возможности не выбирать категорию Category noCategory = new Category { CategoryId = 0, Name = "------------Отсутствует----------", Active = true, CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now }; var listCategorys = categoryRepository.Get().ToList<Category>(); listCategorys.Add(noCategory); listCategorys.Remove(category); categoryView.Categorys = new SelectList(listCategorys, "CategoryId", "Name", 0); } } return categoryView; }