一位同事和我一直在尝试用实体框架代码扩充现有数据库,我们没有运气实现我们需要做的事情。
简而言之,我们有一个现有的数据库,其用户类型为InternetUser。我们正在升级项目并尝试集成MembershipReboot代码。该代码具有UserAccount的概念(和实体)。因此,我们决定在InternetUser对象中使用外键将这两种类型连接起来,该对象引用相关UserAccount对象的主键(GUID)。
我们使用实体框架Power Tools和逆向工程创建了我们的实体。然后,我们通过包含UserAccountId属性手动将InternetUser类型与MembershipReboot中的UserAccount连接。
此迁移的复杂性源于这样一个事实:只要创建UserAccount,MembershipReboot库中的某些哈希(加密)代码就需要运行。我不太确定如何在使用EF代码的种子方法中首先执行此操作。因此,播种时不仅仅是运行SQL脚本的情况。有些C#需要运行才能使用MembershipReboot创建用户。
如果有人试图完成类似的事情,我很乐意听取他们的意见以及他们如何解决问题。