C# PROGRAM

ASP.NET(C#) MVCモデル入門~データベースのデータを削除する

データベースのデータを削除するプログラム

今回は、こちらの記事で作成したプログラムを元に、データベースのデータを削除する処理を追加します。
MVCのデータベース操作については、以下のマイクロソフト公式サイトを参照してください。

データ一覧画面に削除処理用のボタンを追加する

一覧画面に表示される各データの右側に、削除ボタンを追加します。
呼び出すコントローラーは DeleteController、呼び出すメソッドは DeleteConfirm()とします。
削除するデータを特定するため、Hidden()メソッドを使って IDをコントローラーに送る必要があります

下図のように、削除画面へのボタンが各データの右側に追加されます。

cs-mvc-16-1

データ削除用のインターフェイスと実装クラスを作成する

新規にデータ削除用のインターフェイス(IDeleteService)と実装クラス(DeleteImpl)を作成します。
DataFind()メソッドで、IDを元にデータを検索し、Delete()メソッドで該当データをデータベースから削除します。
使用するビューモデルは、登録処理で使用したもの(EmpViewModel)を使います。

実装クラス(DeleteImpl)の中でデータの削除処理を行います。
Remove()メソッドでデータを削除し、SaveChangesAsync()メソッドでデータの削除を確定します。

データ削除用のサービスをProgram.csに追加する

インターフェイスと実装クラスを作成したら、Program.cs にサービスを追加します。

データ削除用のコントローラーを作成する

新規にデータ削除用のコントローラー(DeleteController)を作成します。
処理の流れは、「データ削除(Delete)」→「データ確認(DeleteConfirm)」→「データ削除実行(DeleteProcess)」となります。
データの削除が完了したら、RedirectToAction()メソッドを使って、データ一覧画面に遷移します。

データ削除用のビューを作成する

データ削除用のビューを作成します。
今回は、データ確認用のビューを作成します。
また、ラベルとテキストボックスの位置を揃えるために、スタイルシートを使用しています。
ID は HiddenFor()メソッドで送る必要があります。

プログラムを実行する

一覧画面から削除したいデータの「削除」ボタンをクリックすると、以下のような削除確認画面が表示されます。
本当に削除するデータかどうかを確認して、「削除実行」ボタンを押下します。

cs-mvc-16-2

一覧画面が表示されるので、削除したデータが表示されていないことを確認します。

cs-mvc-16-3

-C#, PROGRAM
-,