EF web api 增删改查
时间: 2023-09-20 12:07:25 浏览: 121
EF增删改查
EF(Entity Framework)是.NET Framework中的一种ORM(Object Relational Mapping)框架,可以用来简化数据库操作。下面是使用EF Web API进行增删改查的示例代码:
1. 增加数据:
```csharp
[HttpPost]
public async Task<IActionResult> AddData([FromBody] Data data)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
_context.Data.Add(data);
await _context.SaveChangesAsync();
return CreatedAtAction(nameof(GetData), new { id = data.Id }, data);
}
```
2. 删除数据:
```csharp
[HttpDelete("{id}")]
public async Task<IActionResult> DeleteData(int id)
{
var data = await _context.Data.FindAsync(id);
if (data == null)
{
return NotFound();
}
_context.Data.Remove(data);
await _context.SaveChangesAsync();
return NoContent();
}
```
3. 修改数据:
```csharp
[HttpPut("{id}")]
public async Task<IActionResult> UpdateData(int id, [FromBody] Data data)
{
if (id != data.Id)
{
return BadRequest();
}
_context.Entry(data).State = EntityState.Modified;
try
{
await _context.SaveChangesAsync();
}
catch (DbUpdateConcurrencyException)
{
if (!_context.Data.Any(e => e.Id == id))
{
return NotFound();
}
else
{
throw;
}
}
return NoContent();
}
```
4. 查询数据:
```csharp
[HttpGet("{id}")]
public async Task<ActionResult<Data>> GetData(int id)
{
var data = await _context.Data.FindAsync(id);
if (data == null)
{
return NotFound();
}
return data;
}
```
以上是EF Web API进行增删改查的示例代码,需要注意的是,这只是示例代码,具体实现还需要根据具体的业务逻辑进行调整。
阅读全文