コード例 #1
0
ファイル: SymbolController.cs プロジェクト: WikiLibs/API
 public async Task<IActionResult> GetSymbol([FromQuery] SymbolQuery query)
 {
     if (query == null || (query.Id == null && query.Path == null))
         throw new Shared.Exceptions.InvalidResource()
         {
             ResourceName = "",
             PropertyName = "Must specify at lease one query parameter",
             ResourceType = typeof(Data.Models.Symbols.Symbol)
         };
     if (query.Path != null)
     {
         var sym = await _symmgr.GetAsync(query.Path);
         return (Json(Models.Output.Symbols.Symbol.CreateModel(sym)));
     }
     else
     {
         var sym = await _symmgr.GetAsync(query.Id.Value);
         return (Json(Models.Output.Symbols.Symbol.CreateModel(sym)));
     }
 }
コード例 #2
0
        public async Task <IActionResult> PostAsync([FromBody, Required] Models.Input.Examples.ExampleRequestCreate example)
        {
            CheckPermissions(example);
            var ex = example.CreateModel();

            if (ex.Data != null)
            {
                ex.Data.User   = _user.User;
                ex.Data.UserId = _user.UserId;
                ex.Data.Symbol = await _symbolManager.GetAsync(ex.Data.SymbolId);
            }
            var mdl = await _manager.PostAsync(ex);

            return(Json(Models.Output.Examples.ExampleRequest.CreateModel(mdl)));
        }
コード例 #3
0
        public async Task <IActionResult> PostAsync([FromBody, Required] Models.Input.Examples.ExampleCreate example)
        {
            if (!_user.HasPermission(Permissions.CREATE_EXAMPLE))
            {
                throw new Shared.Exceptions.InsuficientPermission()
                      {
                          ResourceName      = example.Description,
                          ResourceType      = typeof(Data.Models.Examples.Example),
                          MissingPermission = Permissions.CREATE_EXAMPLE
                      }
            }
            ;
            var ex = example.CreateModel();

            ex.User   = _user.User;
            ex.UserId = _user.UserId;
            ex.Symbol = await _symbolManager.GetAsync(ex.SymbolId);

            var mdl = await _manager.PostAsync(ex);

            return(Json(Models.Output.Examples.Example.CreateModel(mdl)));
        }