前回に引き続き今回はdeleteを試してみたのと、CRUD試し終わったので簡単にまとめてます。
サンプルコード
[FunctionName("EntityFrameworkTestController_Delete")]
public static IActionResult Delete(
[HttpTrigger(AuthorizationLevel.Function, "get", Route = "efcore_test_delete/{id:long}")] HttpRequest req,
long Id,
ILogger log
)
{
log.LogInformation("start EntityFrameworkTestController_Delete");
using (var _dbContext = new DBContextFactory().CreateDbContext())
{
var board = _dbContext.Boards.Find(Id);
if (board == null) {
return new UnprocessableEntityObjectResult("board is null");
}
_dbContext.Boards.Remove(board);
_dbContext.SaveChanges();
}
return new OkObjectResult($"Delete Id: {Id}");
}
やっていること
urlパラメータで渡したIdを元に、boardオブジェクトを取得します。(nullだったらチェックしてエラーとして返してます)
[DBコンテキスト].[モデル名].Removeに取得したオブジェクトを渡して、[DBコンテキスト].SaveChanges()を呼んであげると削除されます。
EFのCRUDまとめ
検索
条件を付けて検索したい時は、Whereメソッドを呼ぶ。

登録

更新

削除
[DBコンテキスト].[モデル名].Deleteにテーブルから取得したオブジェクト(モデル)を渡して、[DBコンテキスト].SaveChanges()を呼んであげると削除される。


コメント