テンプレートによって生成されたクラスのイベントハンドラー(EntityFramework内のT4テンプレート)を登録する必要があります。部分クラスコンストラクターとイベントハンドラーの登録
現在、生成されたコードを編集して、生成されたクラス(モデルコンテキスト)のコンストラクタ内にハンドラを登録しました。
現在のコード:
public MyAppContext(string connectionString)
: base(connectionString, ContainerName)
{
this.ContextOptions.LazyLoadingEnabled = true;
// Register the event handler
this.Connection.StateChange += Connection_StateChange;
}
問題は、コードはこれまでに、将来的に再生成された場合は、上記のコードは上書きされますされ、イベントハンドラは、もはやフックアップしないてしまいます...
コードの再生成は、EFデザイナーを開いてキャンバス上でテーブルを動かすなど、最小のものから自動的に発生します。そのため、必須のコードを生成されたクラスに残しておく必要はありません。
私たちは部分クラスに登録して、生成されたコードをそのまま残すことができますか?
EGには、コンストラクタが呼び出された後も常に発生するイベントがありますか?
これは大きな助けでした!ありがとう! –