创建包含CRUD操作的Web API接口5:实现Delete方法

本节是前边四节约之连续,在前面几节吃大家创设了Web
API并上加了必备的根底设备,实现了Get、Post、和Put方法。本节倍受,大家拿介绍咋样当Web
API中落实Delete方法。

每当RESTful架构中,HTTP DELETE请求用来删除数据源中的并存记录。

现今,让咱在StudentController中开创一个Delete操作方法,该法将动用实体框架删除在数据库中幸存的学生记录。Delete类型的操作方法名称必须以Delete起首或者直接命名也“Delete”。例如:DELETE(),
Delete(), DeleteStudent(), DeleteAllStudents()都是由此来拍卖Http
Delete请求的中之Delete方法的名号。

脚的例证演示了用来处理HTTP Delete请求的Delete操作方法的贯彻。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class StudentController : ApiController
{
    public StudentController()
    {
    }
    public IHttpActionResult Delete(int id)
    {
        if (id <= 0)
            return BadRequest("Not a valid student id");
        using (var ctx = new SchoolDBEntities())
        {
            var student = ctx.Students
                .Where(s => s.StudentID == id)
                .FirstOrDefault();
            ctx.Entry(student).State = System.Data.Entity.EntityState.Deleted;
            ctx.SaveChanges();
        }
        return Ok();
    }
}

凑巧而你所见到的,Delete操作方法包括一个int类型的id参数,因为它仅仅需要传入一个id就足以去记录。它自从数据库获取与指定的id想匹配的依存学生音信,然后将该状态标记为除去。这将起数据库中除去一个生的信。

兹,您可以应用Fiddler发送HTTP DELETE请求,返回音讯如下所示。

图片 1

适使你在面的觊觎中所观察底,HTTP
DELETE请求urlhttp://localhost:64189/api/student?id=1包含查询字符串id。这个id查询字符串将作为一个id参数传递到Delete()方法。成功执行后返回200
OK响应状态。

因而你可以成立Get、Post、Put和Delete方法来实现拍卖HTTP
Get、Post、Put和Delete请求。

本,让我们当继续的段中读怎么着以之Web API项目以至ASP.NET
MVC和AngularJS中。

相关文章