asp.net-mvc-4 - 如何更改简单成员表的默认数据库

标签 asp.net-mvc-4 entity-framework-4 connection-string simplemembership localdb

我想问这个关于 asp.net mvc 4.5 互联网应用程序附带的默认简单成员数据库的快速问题,我的问题是当我第一次创建新用户时,它在哪里创建它的表它是否在其中创建它的表默认连接字符串(LocalDB)?如果我将默认连接字符串更改为使用自定义 MS SQL Express 数据库,那会得到反射(reflect)并且这些表将在我的新数据库中创建吗?

我在默认帐户模型中注意到这段代码,在它的 DbContext 类中它指的是默认连接这是那里的代码:

public class UsersContext : DbContext
{
    public UsersContext() : base("DefaultConnection")
    {
    }

    public DbSet<UserProfile> UserProfiles { get; set; }
}

最佳答案

SimpleMembership 在 InitializeSimpleMemberhsipAttribute.cs 中初始化类。

在默认的 MVC 4 互联网项目模板中,导航到 Filters 目录,在上面的类中,您将找到初始化方法:

WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile",
 "UserId", "UserName", autoCreateTables: true);

这是默认设置,如果您想将它指向不同的数据库,请执行以下操作:

WebSecurity.InitializeDatabaseConnection("MyContext", "TableToPointTo", 
"UserIdColumn", "UserNameColumn", autoCreateTables: false);

在你的上下文类中:

public class MyContext : DbContext {...}

并在 <configuration> 内的连接字符串部分更改名称根中的部分 web.config文件:

<connectionStrings>
    <add name="MyContext" connectionString="..." />
</connectionStrings>

关于asp.net-mvc-4 - 如何更改简单成员表的默认数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16151630/

相关文章:

c# - 如何构建 Entity Framework 应用程序(使用 MEF)

entity-framework-4 - Entity Framework 4 和存储库模式

sql-server - 如何从 Visual Basic 6 连接到 Sql Server 2008 数据库?

c# - 事件目录连接 C#

asp.net - Html.RouteLink 到 Web API 路由 - 可能吗?

c# - 使用 ASP.NET MVC 4 在运行时动态应用验证规则

.net - 是否可以使用 EF4 执行高效的多行删除或更新?

c# - 在数据访问层中使用异步是否有任何性能提升?

c# - StringBuilder 值不能为 Null ASP .NET MVC4

Excel 工作簿连接字段 "Last refreshed"始终为空