コード例 #1
0
        public IActionResult PutSetting([FromBody] SettingViewModel settingVmdl)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                if (string.IsNullOrWhiteSpace(settingVmdl.Key))
                {
                    return(BadRequest("Bitte einen Key für die Einstellung angeben."));
                }

                if (string.IsNullOrWhiteSpace(settingVmdl.Value))
                {
                    return(BadRequest("Bitte einen Value für die Einstellung angeben."));
                }

                var obj = _bl.GetSetting(settingVmdl.Key);

                if (obj == null)
                {
                    _log.LogWarning("Not Found: Setting '{0}' not found", settingVmdl.Key);
                    return(NotFound());
                }

                _bl.UpdateSetting(obj);

                settingVmdl.ApplyChanges(obj, _bl);

                _bl.SaveChanges();

                _log.LogInformation("Setting '{0}' updated by '{1}'", settingVmdl.Key, User.Identity.Name);

                return(Ok(settingVmdl));
            }
            catch (Exception ex)
            {
                _log.LogError("Exception: '{0}'", ex);
                return(StatusCode(500));
            }
        }
コード例 #2
0
        public IActionResult PostSetting([FromBody] SettingViewModel settingVmdl)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                if (string.IsNullOrWhiteSpace(settingVmdl.Key))
                {
                    return(BadRequest("Bitte einen Key für die Einstellung angeben."));
                }

                if (string.IsNullOrWhiteSpace(settingVmdl.Value))
                {
                    return(BadRequest("Bitte einen Value für die Einstellung angeben."));
                }

                if (_bl.GetSetting(settingVmdl.Key) != null)
                {
                    return(BadRequest($"Die Einstellung mit dem key '{settingVmdl.Key}' existiert bereits."));
                }

                var obj = _bl.CreateSetting();

                settingVmdl.ApplyChanges(obj, _bl);

                _bl.SaveChanges();

                _log.LogInformation("New Setting '{0}' created by '{1}'", settingVmdl.Key, User.Identity.Name);

                return(Ok(settingVmdl));
            }
            catch (Exception ex)
            {
                _log.LogError("Exception: '{0}'", ex);
                return(StatusCode(500));
            }
        }