예제 #1
0
        public void CreateInstance(InstanceBindingModel model)
        {
            var instance = this.mapper.Map <CourseInstance>(model);

            this.db.CourseInstances.Add(instance);

            this.db.SaveChanges();
        }
예제 #2
0
        public async Task <InstanceBindingModel> AddInstance(int id)
        {
            var trainers = await this.GetTrainersAsync();

            var viewModel = new InstanceBindingModel()
            {
                CourseId = id, AllTrainers = trainers
            };

            return(viewModel);
        }
예제 #3
0
        public IHttpActionResult UpdateInstance([FromUri] int id, [FromBody] InstanceBindingModel instance)
        {
            Exception ex = null;

            try {
                _dataConnector.SaveInstance(instance.GetEntity());
            } catch (Exception e) {
                ex = e;
            }

            return(GetHttpActionResult(ex));
        }
예제 #4
0
        public IHttpActionResult CreateInstance([FromBody] InstanceBindingModel instance, [FromBody] ResourceEntryBindingModel instanceName)
        {
            Exception ex = null;

            try {
                _dataConnector.SaveInstance(instance.GetEntity());
                _resourceConnector.AddResource(instanceName.GetResourceEntry(instance.GetEntity().GetType().Name));
            } catch (Exception e) {
                ex = e;
            }

            return(GetHttpActionResult(ex));
        }
예제 #5
0
        public async Task <IActionResult> AddInstance(InstanceBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                model.AllTrainers = await this.service.GetTrainersAsync();

                return(this.View(model));
            }

            var trainer = await this.service.GetTrainer(model.TrainerId);

            if (trainer == null)
            {
                ModelState.TryAddModelError("TrainerId", "Wrong Trainer");

                return(this.View());
            }

            this.service.CreateInstance(model);

            return(Redirect(string.Format(this.ReturnUrl, model.CourseId)));
        }