public TableEntity(TableDescViewModel viewModel) : base()
 {
     if (viewModel != null)
     {
         Id          = viewModel.Id;
         Description = viewModel.Description;
     }
 }
        public void Required()
        {
            var model = new TableDescViewModel();

            var result = model.Validate();

            Assert.True(result.Any());

            Assert.Equal("Description", result.ElementAtOrDefault(0).MemberNames.FirstOrDefault());
            Assert.Equal("The Description field is required.", result.ElementAtOrDefault(0).ErrorMessage);
        }
        public void Valid()
        {
            var model = new TableDescViewModel()
            {
                Description = "Test"
            };

            var result = model.Validate();

            Assert.False(result.Any());
        }
        public void RangeOrLength()
        {
            var model = new TableDescViewModel()
            {
                Description = "Test",
                Id          = -1
            };

            var result = model.Validate();

            Assert.True(result.Any());

            Assert.Equal("Id", result.ElementAtOrDefault(0).MemberNames.FirstOrDefault());
            Assert.Equal("The field Id must be between 0 and 9,223372036854776E+18.", result.ElementAtOrDefault(0).ErrorMessage);
        }
        public void FromEntity()
        {
            var entity = new TableEntity()
            {
                Description = "Test",
                Id          = 1
            };
            var model = new TableDescViewModel(entity);

            var result = model.Validate();

            Assert.False(result.Any());

            Assert.Equal(entity.Description, model.Description);
            Assert.Equal(entity.Id, model.Id);
        }
 public IActionResult Edit(long id, [Bind("Id,Description")] TableDescViewModel viewModel)
 {
     if (ModelState.IsValid && viewModel != null && id == viewModel.Id)
     {
         try
         {
             _tableRepository.Update(viewModel.GetEntity()).Wait();
         }
         catch (Exception)
         {
             if (_tableRepository.Exists(viewModel.Id).Result)
             {
                 throw;
             }
         }
         return(RedirectToAction(nameof(Index)));
     }
     return(View(viewModel));
 }