コード例 #1
0
        public virtual ActionResult Edit(JobSearch jobSearch)
        {
            try
            {
                // Determine if we are editing or adding a jobsearch
                if (jobSearch.Id == 0)
                {
                    jobSearch = _createJobSearchCommand.ForUserId(CurrentUserId)
                                .WithName(jobSearch.Name)
                                .WithDescription(jobSearch.Description)
                                .Execute();
                }
                else
                {
                    _editJobSearchCommand.WithJobSearchId(jobSearch.Id)
                    .SetName(jobSearch.Name)
                    .SetDescription(jobSearch.Description)
                    .CalledByUserId(CurrentUserId)
                    .Execute();
                }

                // Set the current user's last visited job search to this one
                _editUserCommand.WithUserId(CurrentUserId).SetLastVisitedJobSearchId(jobSearch.Id).Execute();
                return(RedirectToAction(MVC.Task.Index()));
            }

            // Show validation errors to the user and allow them to fix them
            catch (ValidationException ex)
            {
                foreach (var error in ex.Errors)
                {
                    ModelState.AddModelError(error.PropertyName, error.ErrorMessage);
                }

                return(View(jobSearch));
            }
        }