是否可以使用我的表和 SqlProvider 表创建 EF 连接字符串,以便我可以执行以下操作:
MembershipUser newUser = Membership.CreateUser(
"username", "password",
"email", "question ",
"answer", true, out status
);
它将在 SqlProvider 创建的表中添加新用户。
我正在设置一个“不支持的关键字:'元数据'”异常抛出,因为SQLProvider需要一个ADO连接字符串,但我必须使用EF连接字符串来获取我的表。
据我所知,你不能在同一个项目中结合代码优先和数据库优先方法,所以我陷入了如何解决的两难境地这个问题。
答案 0 :(得分:1)
你做不到。但是,如果您为AspNet标识和您自己的表使用相同的数据库,则可能不需要。
在这种情况下,您只需将所有AspNet身份表导入到edmx中,并将其用作任何其他实体。您还可以在表和标识表之间的数据库中创建PK-FK关系,这意味着您可以从dbcontext查询用户,获取相关实体等。
因此,在这种情况下,身份将使用其连接字符串,应用程序的其余部分将使用您的。
如果数据库发生更改,您必须小心更改两个连接字符串。