ツナ缶雑記

ぐうたらSEのブログです。主にマイクロソフト系技術を中心に扱います。

Entity Framework

Azure Pipelines で SQL Server LocalDB を用いたテストを実行する

Azure Pipelines では、ビルドサーバーを大きく 2 つの種類から選択できます。 1 つ目は「MS-Hosted Agent」と呼ばれるもので、雑に言うとマイクロソフトさんが準備したビルドマシンをオンデマンドで借用する方式です。 2 つ目は「Self Hosted Agent」と呼ば…

Entity Framework Core でエンティティの変更記録を確認する方法

前提となる環境 Visual Studio 2022 .NET 6 Entity Framework Core 6.0.0 SQL Server LocalDB Change Tracker とは何か Entity Framework Core は、 Change Tracker という仕組みを持っています。 Change Tracker は、 DbContext を経由して取得したデータに…

Entity Framework Core でテーブルスキーマを更新する

2022 年 1 月 27 日 更新 掲載していたサンプルを .NET 6.0.1 に置き換えました。 Entity Framework Core を利用して、テーブルのスキーマを更新する方法について解説していきます。 今回は、前回構築したアプリケーションを利用して、テーブルのスキーマを…

Entity Framework Core を使ったアプリケーションの開発手順

2022 年 1 月 27 日 更新 掲載していたサンプルを .NET 6.0.1 に置き換えました。 Entity Framework Core を使うと、ほとんど SQL を書かずとも、データベースの作成やデータの更新、取得ができるため、非常に便利だと思います。 今回は Entity Framework Co…

Entity Framework Core でデータベースから DbContext を生成する方法

Entity Framework Core を使うと、既存のデータベースから DbContext やテーブルに対応するクラス群を自動生成することができます。 ただし Entity Framework 6 までのように、 GUI による操作方法は提供されておらず、すべてコマンドラインから実行する必要…

Entity Framework Core ツールをコマンドラインから更新する方法

Entity Framework Core を使っていると以下のようなメッセージによく出くわします。 The Entity Framework tools version '5.0.2' is older than that of the runtime '5.0.3'. Update the tools for the latest features and bug fixes. こんなメッセージが…

Entity Framework 6で実行したSQLと実行時間をアプリケーション内で取得する方法

Entity Frameworkを使用すると、特にSQLを意識しなくても、データアクセス処理を実装することができてしまいます。その反面、実際にどのようなクエリが流れているのか、そしてそのクエリの実行にどのくらいの時間がかかっているのかを後から知ろうとすると、…

Entity Framework 6 DBファーストで数値型のカラムをEnumとして取り扱う方法

やりたいこと Entity Frameworkのデータベースファーストを使用する場合、モデルクラスの各プロパティの型は、データベースの型によって勝手に決められます。「XXステータス」のように、取りうる値が決まっているケースでは、.NETアプリケーション内でできれ…