ASP.NET CORE WebAPI 基于EntityFramework 实现增查改删CRUD

WebAPI 通过 Post Get Put Delete 实现增查改删--基于EntityFramework

Get 实现信息查询

       //Get:api/todoapi
        [HttpGet]
        public async Task>> GetTodoItems()
        {
            return await _context.TodoItem.ToListAsync();
        }

        //Get:api/todoapi/id
        [HttpGet("{id}")]
        public async Task> GetTodoItem(long id)
        {
            //FindAsync 根据id查找
            var todoItem = await _context.TodoItem.FindAsync(id);
            if (todoItem == null)
            {
                //返回404
                return NotFound();
            }
            //返回结果为json格式
            return todoItem;
        }

Post 实现信息创建

        //Post:api/todoapi
        [HttpPost]
        public async Task> PostTodoItem(TodoItem item)
        {
            _context.TodoItem.Add(item);
            await _context.SaveChangesAsync();
            //CreatedAtAction(actionName,routeValues,value).
            return CreatedAtAction(nameof(GetTodoItem), new { id = item.Id }, item);
        }

Put实现信息修改

        //Put:api/todoapi/id
        [HttpPut("{id}")]
        public async Task PutTodoItem(long id,TodoItem item)
        {
            if (id != item.Id)
            {
                return BadRequest();
            }
            _context.Entry(item).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return NoContent();
        }

Delete实现信息删除

 //Delete:api/todoapi/id
        [HttpDelete("{id}")]
        public async Task DeleteTodoItem(long id)
        {
            var todoItem = await _context.TodoItem.FindAsync(id);

            if (todoItem == null)
            {
                return NotFound();
            }
            _context.TodoItem.Remove(todoItem);
            await _context.SaveChangesAsync();

            return NoContent();
        }

 

你可能感兴趣的:(WebAPI)