public CourseCreate.Request CreateValidRequest(params Action<CourseCreate.Request>[] updates)
        {
            var commandModel = EntityGenerator.Create<CourseCreate.CommandModel>();

            var request = new CourseCreate.Request("UserId", commandModel);
            updates.ToList().ForEach(func => func(request));
            return request;
        }
示例#2
0
        public CourseCreate.Request CreateValidRequest(params Action <CourseCreate.Request>[] updates)
        {
            var commandModel = EntityGenerator.Create <CourseCreate.CommandModel>();

            var request = new CourseCreate.Request("UserId", commandModel);

            updates.ToList().ForEach(func => func(request));
            return(request);
        }
        public async Task<ActionResult> Create(CourseCreate.CommandModel commandModel)
        {
            var request = new CourseCreate.Request(SystemPrincipal.Name, commandModel);
            var response = DomainServices.Dispatch(request);

            if (!response.HasValidationIssues)
                return RedirectToAction("Index");

            ViewBag.DepartmentID = await CreateDepartmentSelectList(commandModel.DepartmentID);
            return View(commandModel);
        }
        public async Task <ActionResult> Create(CourseCreate.CommandModel commandModel)
        {
            var request  = new CourseCreate.Request(SystemPrincipal.Name, commandModel);
            var response = DomainServices.Dispatch(request);

            if (!response.HasValidationIssues)
            {
                return(RedirectToAction("Index"));
            }

            ViewBag.DepartmentID = await CreateDepartmentSelectList(commandModel.DepartmentID);

            return(View(commandModel));
        }
        // Create course
        public static CourseCreate.Response Handle(IRepository repository, CourseCreate.Request request)
        {
            // Validation now performed in the dispacther decorators (See AutoValidate<T> in the DomainBootstrapper class)

            var container = new EntityStateWrapperContainer();

            container.AddEntity(CourseFactory.Create(request.CommandModel));
            var validationDetails = repository.Save(container);

            var courseId = default(int?);

            if (!validationDetails.HasValidationIssues)
            {
                courseId = container.FindEntity <Course>().CourseID;
            }

            return(new CourseCreate.Response(validationDetails, courseId));
        }