修改ASP.NET标识的Connectionstring名称

时间:2014-01-31 18:18:58

标签: asp.net-web-api asp.net-identity asp.net-web-api2

我想存储更改连接字符串,以便它指向具有所有必需表的现有数据库。当搜索“DefaultConnection”时,我无法找到应用程序中的任何位置,Models文件夹中没有任何与类相关的模型。我只看到接口定义是metaData。我可以更改web.config中的连接字符串值以使其工作,但现在我有点想知道它是如何实现的,这样如果我想自定义逻辑,我在哪里可以找到这些类?

我正在使用最新版本的WebAPI并使用VS 2013.

令我困惑的是如何修改类来实现自定义逻辑,我找不到与标识相关的模型类。

1 个答案:

答案 0 :(得分:1)

你是对的,web.config是改变它的地方。虽然可以在ApplicationDbContext中实现另一个构造函数,该构造函数调用接受IdentityDbContext<TUser>的基[nameOrConnectionString]类构造函数。从那里开始指定使用:base("Data Source=...;Initial Catalog=...;...")或使用新的覆盖构造函数。

此外,您的用户应该(默认情况下)是名为ApplicationUser的东西,它继承自IdentityUser(它只是一个实现IUser的虚拟类,并添加了一些外键,如{ {1}},ClaimsLogins(以及其他))。因此,如果您需要自定义它,您应该将自定义逻辑/属性添加到该对象。

重要的是要注意除了您的上下文和自定义(继承)版本的Roles之外的所有内容都在身份库中。因此,您将获得的唯一自定义来自“IdentityUser”和“ApplicationUser”。