public Category(Category category)
 {
     CategoryId = category.CategoryId;
     Title = category.Title;
     Group = category.Group;
     Order = category.Order;
     EditDate = category.EditDate;
     EditedBy = category.EditedBy;
 }
 public async Task UpdateCategory_Should_ReturnDifferentCategory()
 {
     Category cat1 = await DAL.GetCategory(5);
     Category cat2 = new Category(cat1);
     cat1.Title = "NewTitle";
     await DAL.UpdateCategory(cat1);
     Category cat3 = await DAL.GetCategory(cat1.CategoryId);
     Assert.IsFalse(cat3.Equals(cat2));
 }
 public async Task AddCategory(string title, int group, int order, int userId)
 {
     var newCategory = new Category
     {
         Title = title,
         EditDate = DateTime.Now,
         EditedBy = userId,
         Group = group,
         Order = order
     };
     await DataAccess.AddCategory(newCategory);
 }
        public async Task AddCategory_Should_ReturnSameCategory()
        {
            var cat1 = new Category {Title = "cat1", Group = 2, Order = 1, EditedBy = 1, EditDate = new DateTime(2011, 6, 10)};
            await DAL.AddCategory(cat1);
            var cat2 = new Category { CategoryId = 49, Title = "cat2", Group = 2, Order = 1, EditedBy = 1, EditDate = new DateTime(2011, 6, 10) };
            await DAL.AddCategory(cat2);

            Category category1 = await DAL.GetCategory(40); 
            Category category2 = await DAL.GetCategory(41);

            Assert.AreEqual(category1, cat1);
            Assert.AreEqual(category2, cat2);
        }
 public Category UpdateCategory(Category updateData)
 {
     throw new NotImplementedException();
 }
 public CategoryEditWindow(Category category)
 {
     InitializeComponent();
     CEViewModel = new CategoryEditViewModel(category);
     this.DataContext = CEViewModel.EditedCategory;
 }
        public SingleItemResponse<CategoryDTO> UpdateCategory(CategoryDTO updateData)
        {
            var updateDataFull = new Category
            {
                CategoryId = updateData.CategoryId,
                Title = updateData.Title,
                EditDate = DateTime.Now,
                EditedBy = GetUserId(),
                Group = updateData.Group,
                Order = updateData.Order
            };

            using (var context = new AF_Context())
            {
                try
                {
                    Category cat = context.Categories.First(c => c.CategoryId == updateData.CategoryId);
                    context.Entry(cat).CurrentValues.SetValues(updateDataFull);
                    context.SaveChanges();
                    int id = updateData.CategoryId;
                    return GetCategory(id);
                }
                catch (Exception ex)
                {
                    throw;
                }
            }
        }
        public SingleItemResponse<CategoryDTO> AddCategory(CategoryDTO newCategory)
        {
            var newCategoryFull = new Category
            {
                Title = newCategory.Title,
                EditDate = DateTime.Now,
                EditedBy = GetUserId(),
                Group = newCategory.Group,
                Order = newCategory.Order
            };

            using (var context = new AF_Context())
            {
                try
                {
                    context.Categories.Add(newCategoryFull);
                    context.SaveChanges();
                    int id = newCategoryFull.CategoryId;
                    return GetCategory(id);
                }
                catch (Exception ex)
                {
                    throw;
                }
            }
        }
 public async Task UpdateCategory(Category updateData)
 {
     using (var context = new AF_Context())
     {
         try
         {
             //TODO: wyczyscic lol
             //Category cat = context.Categories.Find(updateData.CategoryId);
             Category cat = context.Categories.First(c => c.CategoryId==updateData.CategoryId);
             cat.CategoryId = updateData.CategoryId;
             cat.EditDate = updateData.EditDate;
             cat.EditedBy = updateData.EditedBy;
             cat.Group = updateData.Group;
             cat.Order = updateData.Order;
             cat.Title = updateData.Title;
             await context.SaveChangesAsync();
         }
         catch (Exception ex)
         {
             throw ex;
         }
     }
 }
 public async Task AddCategory(Category newCategory)
 {
     using (var context = new AF_Context())
     {
         try
         {
             context.Categories.Add(newCategory);
             int recordsAffected = await context.SaveChangesAsync();
         }
         catch (Exception ex)
         {
             throw ex;
         }
     }
 }
 // private constructor called by the async method
 
 public CategoryEditViewModel(Category originalCategory)
 {
     OriginalCategory = originalCategory;
     EditedCategory = new Category(OriginalCategory);
 }
 public async Task UpdateCategory(Category updateData)
 {
     await DataAccess.UpdateCategory(updateData);
 }