我有一个ASP.NET MVC 4 Web应用程序,我在web.config
中定义了连接字符串。我正在使用SimpleMembership,默认情况下我想使用名为DefaultConnection
的连接字符串
我也使用EntityFramework 5
访问同一个数据库并存储我的应用数据。我的EntityFramework
上下文称为AppContext
。因此,我的上下文默认使用名为AppContext
的连接字符串。
我目前的解决方案是定义两个连接字符串:
<add name="DefaultConnection" connectionString="REMOVED" providerName="System.Data.SqlClient" />
<add name="AppContext" connectionString="REMOVED" providerName="System.Data.SqlClient" />
这里常用的解决方案是什么?我假设这是一种常见的情况,人们要么覆盖EntityFramework连接字符串的默认名称,要么覆盖SimpleMembership连接字符串。
答案 0 :(得分:0)
您不必接受默认设置,除非它们与您想要的内容完全匹配。
我不明白为什么你需要有两个完全相同的连接字符串到同一个数据库!我相信它可以这样工作,但是让任何一个使用另一个连接字符串并不是什么大问题。例如,默认情况下,在AccountModels中,我有:
public class UsersContext : DbContext
{
public UsersContext()
: base("DefaultConnection")
{
}
public DbSet<UserProfile> UserProfiles { get; set; }
public DbSet<webpages_Membership> Membership { get; set; }
}
我只需要更改&#34; DefaultConnection&#34; to&#34; AppContext&#34;在那里使用与实体框架相同的连接字符串使SimpleMembership:
public class UsersContext : DbContext
{
public UsersContext()
: base("AppContext")
{
}
public DbSet<UserProfile> UserProfiles { get; set; }
public DbSet<webpages_Membership> Membership { get; set; }
}