Entity Framework 6 Code Firstを使用していますが、トリガーを作成したいと思います。
どうすればいいですか?
トリガーが必要な理由は、ユーザーがデータベースを直接編集するか、作成中のプログラムを使用して編集する可能性があるためです。また、テーブルの2つの列が両方ともnullではなく、両方がnullではないことを確認する必要があります。
私は探していて、方法を見つけることができません。
最初にコードを使用してトリガーを指定する方法はありますか?
Entity Frameworkはトリガーをサポートしていませんが、トリガーを作成するステートメントを手動で実行することはできますが、テーブルの作成後にこれを行う必要があります(移行を使用する場合)。
EF 4.1 code-firstトリガーをテーブルに追加する でLadislavによって指定された手法を使用できます。
彼の警告に注意してください。ただし、EFはトリガーに加えられた変更を認識しません。テーブルの2つの列がnullでないことを確認するだけの場合は、制約を使用する方が適切です(EFでは制約もサポートされていませんが、手動で追加できます)。
ライブラリを確認してください EntityFramework.Triggers 。 Entity Frameworkレイヤーで機能するため、誰かがデータベースを直接変更してもトリガーイベントは発生しません。 NuGetリンクは https://www.nuget.org/packages/EntityFramework.Triggers/ です