MVC下,修改用户验证为自己定义的数据表

本文介绍如何在MVC项目中配置用户验证功能,包括修改web.config文件中的连接字符串,设置InitializeSimpleMembershipAttribute类中的数据库连接及表名等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在MVC下,创建一个MVC项目,并且选择为internet应用,系统会自带了用户验证的功能。但这个验证功能怎么和自己的业务表联系起来,刚学的时候,费了一些功夫。

首先,创建项目成功后,打开web.config文件,可以看到节点:<connectionStrings>,自带了一个name="DefaultConnection" 的联接。可以在这个联接的基础上修改,也可以新增,此处新增一个联接。

<add name="UserConnection" connectionString="Data Source=192.168.1.88;Initial Catalog=AIS;user id=sa;password=***;" providerName="System.Data.SqlClient" />

新增完成联接后,保存web.config文件。


然后,在项目下,找到 Filters文件夹,点开后可以看到一个文件: InitializeSimpleMembershipAttribute.cs。

打开此文件:

找到 WebSecurity.InitializeDatabaseConnection,这里就是设置数据表的地方。

("UserConnection", "bas_user_tb", "id_user", "user_name", autoCreateTables: false);

第一个参数是联接串,刚在web.config里设置的。

第二个参数是数据表

第三个参数是用户ID,关键字

第四个参数是用户名,系统根据这个名称进行验证。

第五个参数是要不要创建新表,由于我的表已存在,所以参数是false。因为这个表是你创建的,所以除了上面参数里的字段外,其他的,你想加什么字段都可以。


然后,再增加以下几个表:

webpages_Membership

CREATE TABLE [webpages_Membership](
[UserId] [int] NOT NULL,
[CreateDate] [datetime] NULL,
[ConfirmationToken] [nvarchar](128) NULL,
[IsConfirmed] [bit] NULL,
[LastPasswordFailureDate] [datetime] NULL,
[PasswordFailuresSinceLastSuccess] [int] NOT NULL,
[Password] [nvarchar](128) NOT NULL,
[PasswordChangedDate] [datetime] NULL,
[PasswordSalt] [nvarchar](128) NOT NULL,
[PasswordVerificationToken] [nvarchar](128) NULL,
[PasswordVerificationTokenExpirationDate] [datetime] NULL,
PRIMARY KEY CLUSTERED 
(
[UserId] ASC
)


其他几个表,如角色,角色和用户关系 ,暂时还没有用到,先可以不加。

然后,就可以运行了。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值