同僚と私は、最初にエンティティ フレームワーク コードを使用して既存のデータベースを拡張しようとしましたが、必要なことを達成することができませんでした。
簡単に言うと、ユーザー タイプ InternetUser を持つ既存のデータベースがあります。プロジェクトをアップグレードし、MembershipRebootコードを統合しようとしています。そのコードには、UserAccount の概念 (およびエンティティ) があります。そこで、関連する UserAccount オブジェクトの主キー (GUID) を参照する InternetUser オブジェクトの外部キーを使用して、これら 2 つの型を関連付けることにしました。
エンティティ フレームワークの Power Tools とリバース エンジニアリングを使用して、エンティティを作成しました。次に、UserAccountId プロパティを含めることで、InternetUser タイプを MembershipReboot の UserAccount に手動で接続しました。
この移行の複雑さは、UserAccount が作成されるたびに、MembershipReboot ライブラリ内の一部のハッシュ (暗号化) コードを実行する必要があるという事実に起因しています。最初にEFコードを使用してseedメソッドでそれを行う方法がよくわかりません。したがって、シード時に SQL スクリプトを実行するだけではありません。MembershipReboot を使用してユーザーを作成するには、一部の C# を実行する必要があります。
誰かが同様のことを達成しようとした場合、私は彼らから、そして彼らがどのように問題を解決したかを聞きたいです.