将自定义字段添加到aspnetdb.mdf

时间:2012-09-27 11:22:41

标签: asp.net-mvc

好的,所以我在现有的aspnetdb.mdf数据库aspnet_Groups中创建了一个新表,并添加了一个外键并将其与aspnet_UsersGroupId相关联。

所以用户表现在是:

ApplicationId
UserId
UserName
LoweredUserName
MobileAlias
IsAnonymous
LastActivityDate
GroupId               //<--- Added by me, and related to aspnet_Groups table

群组表格只有GroupIdGroupName,所以实际上非常简单。

我想知道的是,如何从MVC应用程序中保存并获取此字段/表的数据。或者这必须以另一种方式完成吗?

1 个答案:

答案 0 :(得分:0)

<强>被修改

我不建议干预aspnetdb的工作...... 如果您需要 - 创建自己的表并将其链接到aspnetdb。 更多的控制,更多的自定义,更少的内部MS身份验证引入的错误...

关于此Storing data in a Custom table within ASPNETDB.mdf vs. storing information about a user in a profile

的精彩帖子

但是,再一次,你的问题没有正确的答案 - 只要它有效且具有良好的可用性和可读性 - 它很好。

如果你可以使用Roles作为你的组 - 这可以解决问题,但如果没有,我会定义额外的表,而不是插入到预构建的表中。这是我的意见。

修改2

有很多方法可以使用aspnetdb。您甚至可以将其嵌入到您自己的数据库中。像这样:Configuring ASP.NET 2.0 Application Services to use SQL Server 2000 or SQL Server 2005

回答您的特定问题:您可以通过身份验证API访问aspentdb:

string userName = Membership.GetUserNameByEmail(emailToCheck);
if (userName != null)

或覆盖membershipprovider,roleprovider和securityprovider,甚至直接访问,如此处所述

Membership, Role, and Security

希望这有帮助!