読者です 読者をやめる 読者になる 読者になる

まめログ

ITアーキテクトを目指して

VB.NETでPostgreSQL レコードを削除する(Entity Framework使用)

VB.NET Entity Framework

削除の方法です。

以下の記事の続きになります。mamelog.hatenablog.jp




UserRepositoryに以下のメソッドを追加します。

    ''' <summary>
    ''' 対象のユーザを削除する
    ''' </summary>
    ''' <param name="user"></param>
    ''' <remarks></remarks>
    Public Sub Delete(ByVal user As User)
        context.Users.Remove(user)
    End Sub

予め削除するデータを用意しておきました。

f:id:mamepika:20150403154217j:plain

適当にボタンを設置して、クリックイベントに以下のようなコードを記述します。

    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
        Dim userRepo As New UserRepository()

        Dim user = userRepo.FindById(11)

        userRepo.Delete(user)
        userRepo.Save()
        MessageBox.Show("削除完了")
    End Sub

削除が出来ました。
f:id:mamepika:20150403154218j:plain

DB上のレコードもきちんと消えています。
f:id:mamepika:20150403154219j:plain

いったん、削除対象のレコードを取得しておくのが面倒ですが、
コード量は少なく、処理としてはすっきりしていると思います。