この節では、Entity Frameworkを使ってデータベースにデータを追加する方法を見てみましょう。SQL文でINSERT文に該当します。
データを追加するにはLINQの命令文ではなく、Entity Data Modelで追加したテーブルに対応するオブジェクトのAddメソッドを使って追加します。その後、DbContextクラスのSaveChangesメソッドでデータベースに反映させます。
○ プロジェクト
プロジェクトを作成して確認してみましょう。
プロジェクトの種類 | コンソール アプリケーション |
---|---|
プロジェクト名 | EntityInsertTest |
○ 作成の準備
「LINQSelectTest」プロジェクトを修正して作成しましょう。LINQSelectTestフォルダーをコピーして、作成するプロジェクト名にフォルダー名を変更してください。
○ プログラム
Mainメソッドを次のように記述してください。
Program.cs
○ 実行結果
追加する情報を入力してください。
ID:7
ユーザー名:nakamura
パスワード:npass
氏名:中村
登録しました。
○ 解説
28行目ではUsersオブジェクトを生成して1行分のデータを生成しています。インスタンス生成時に各プロパティにデータをセットしています。31行目では14行目で生成したBooksEntitiesオブジェクトを通して、UsersコレクションのAddメソッドを呼び出しています。引数にあらかじめ生成しておいたUsersオブジェクトを指定します。すると、BooksEntitiesオブジェクトのUsersコレクションに新しい行のデータが追加されます。
34行目ではBooksEntitiesオブジェクトのSaveChangesメソッドを呼び出しています。これによりデータベースに実際にデータが追加されます。