コード例 #1
0
        public async Task <IActionResult> Post(
            [
                FromBody,
                Bind
                (
                    nameof(ProviderCreateModel.Name),
                    nameof(ProviderCreateModel.BaseApiUrl)
                )
            ] ProviderCreateModel providerCreateModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var provider = new Provider(Guid.NewGuid(), providerCreateModel.Name, providerCreateModel.BaseApiUrl);

            scvContext.Add(provider);

            await scvContext.SaveChangesAsync();

            providerCreateModel.Id = provider.Id;

            return(Created($"providers/{providerCreateModel.Id}", providerCreateModel));
        }
コード例 #2
0
        private IdentityProvider ExtractCreateFormData(ProviderCreateModel formData)
        {
            var myIdetity = new IdentityProvider();

            myIdetity.Name    = formData.Name;
            myIdetity.Code    = formData.Code;
            myIdetity.Phone   = formData.Phone;
            myIdetity.Email   = formData.Email;
            myIdetity.Address = formData.Address;
            myIdetity.Status  = formData.Status;
            myIdetity.Email   = formData.Email;
            return(myIdetity);
        }
コード例 #3
0
        public async Task <ActionResult <ProviderModel> > PostProvider(ProviderCreateModel model)
        {
            var result = Check(Operation.Create);

            if (result.Fail())
            {
                return(result);
            }

            var entity = GetEntity(model);

            DB_TABLE.Add(entity);
            await DB.SaveChangesAsync();

            Log(DB_TABLE.GetName(), Operation.Create, null, GetModel(entity));

            return(CreatedAtAction(nameof(GetProvider), new { id = entity.Id }, GetModel(entity)));
        }
コード例 #4
0
        public ActionResult Create(ProviderCreateModel model)
        {
            var newId = 0;

            if (!ModelState.IsValid)
            {
                string messages = string.Join("; ", ModelState.Values
                                              .SelectMany(x => x.Errors)
                                              .Select(x => x.ErrorMessage + x.Exception));
                this.AddNotification(messages, NotificationType.ERROR);
                return(View(model));
            }

            try
            {
                //Begin db transaction
                var info = ExtractCreateFormData(model);

                newId = _mainStore.Insert(info);
                if (newId > 0)
                {
                    //Clear cache
                    CachingHelpers.ClearProviderCache();

                    this.AddNotification(NotifSettings.Success_Created, NotificationType.SUCCESS);
                }
                else
                {
                    this.AddNotification(NotifSettings.Error_SystemBusy, NotificationType.ERROR);
                }
            }
            catch (Exception ex)
            {
                this.AddNotification(NotifSettings.Error_SystemBusy, NotificationType.ERROR);

                logger.Error("Failed for Create request: " + ex.ToString());

                return(View(model));
            }

            return(RedirectToAction("Edit/" + newId));
        }
コード例 #5
0
        //[AccessRoleChecker]
        public ActionResult Create()
        {
            var createModel = new ProviderCreateModel();

            return(View(createModel));
        }