セージ の メモ書き

メモこそ命の恩人だ

C#-EntityFramework

C# - EntityFramework の 接続文字列

接続文字列 SqlConnectionStringBuilder クラス 接続文字列 ADO.NET Entity Framework での接続文字列 - ADO.NET | Microsoft Docs 方法: EntityConnection の接続文字列を作成する - ADO.NET | Microsoft Docs 接続文字列とは、DB 接続方法を指定した文字列…

C# - EntityFramework で発生する例外の調査

DbEntityValidationException 文字列の最大長に違反する DbUpdateException クラス 主キー違反 外部キー制約に違反する ( 子が存在する状態で親を削除 ) 外部キー制約に違反する ( 親が存在しない状態で子を追加 ) 一意制約に違反する DB に指定のテーブルが…

C# - EntityFramework で Enum の Flags 属性検索

Enum - Flags 属性 ( FlagsAttribute クラス ) EntityFramework での検索方法 Enum - Flags 属性 ( FlagsAttribute クラス ) Flags 属性 について ⇒ https://soseiji-memo.hatenablog.com/entry/enum EntityFramework での検索方法 int 型のプロパティに Has…

C# - 自動インクリメントされた値の取得

IDENTITY プロパティ 自動インクリメント値の取得方法 IDENTITY プロパティ IDENTITY (プロパティ) (Transact-SQL) - SQL Server | Microsoft Docs 列を自動インクリメントする設定である。 INSERT 時、値の指定が不要になる。 自動インクリメント値の取得方…

C# - 自動マイグレーション

マイグレーション ( Migration : 移行 ) 自動マイグレーション 設定無効化 設定有効化 テーブル生成 カラム生成 カラム削除 リリース環境時の設定 マイグレーション ( Migration : 移行 ) データ移行 - Wikipedia マイグレーションとは、現在使用中のシステ…

C# - DbContext で SQL 文 を使用

SqlQuery メソッド ExecuteSqlCommand メソッド SqlQuery メソッド DbSet.SqlQuery(String, Object[]) メソッド (System.Data.Entity) | Microsoft Docs SQL の SELECT を実行できる。 検索結果は IEnumerable で返るため注意すること。 Where メソッド等で…

C# - SqlFunctions

SqlFunctions クラス PatIndex メソッド SqlFunctions クラス SqlFunctions クラス (System.Data.Objects.SqlClient) | Microsoft Docs LINQ to Entities で DB のメソッドを使用可能にするクラス。 PatIndex メソッド SqlFunctions.PatIndex(String, String…

C# - 関連エンティティの読込

関連エンティティの読込方法 遅延読込 明示的な読込 補足 使用エンティティ 関連エンティティの読込方法 関連エンティティの読み込み - EF6 | Microsoft Docs 以下の2通りの方法がある。 遅延読込 明示的な読込 遅延読込 ObjectContextOptions.LazyLoadingEn…

C# - トラッキング機能の無効化

トラッキング機能 AsNoTracking メソッド Entry メソッド トラッキング機能 DbContext 内部に、エンティティの追加/変更/削除 etc. の状態を保持する機能。 状態は EntityState 列挙型として定義されてる。 EntityState 列挙型 (System.Data) | Microsoft …

C# - EntityFramework で LINQ 使用時に生成される SQL 確認

SQL 出力方法 対象の LINQ 拡張メソッド ToList / ToArray メソッド Select メソッド Where メソッド First / FirstOrDefault メソッド Single / SingleOrDefault メソッド OrderBy/ThenBy メソッド Take メソッド Skip メソッド Count / Min / Max メソッ…

C# - EntityFramework で CRUD 操作

準備 CRUD 操作 Create Read Update Delete 補足 生成物1: SampleModel 生成物2: Person 準備 CRUD 操作は、以下のテーブルで試してみる。 (Person テーブル) Id (PK) Name 1 suzuki 2 itou まずは、この既存のテーブルを C# で扱えるようにする。 Visual …