0

带着这个问题,我主要是从那些在他们自己的数据库中实现开箱即用的 ASP.NET 成员资格的人那里寻找答案——我已经在我的数据库中设置了表,据我所知它们包含主要是我需要的,但不是全部。我将拥有用户所属的公司(公司)的概念,因此我必须将 aspnet_Users 与我的公司表相关联(每个用户将是一个公司的成员)。

如果可能,请提供一些指导方针,如果我将来必须修改表格设计,我可能会遇到什么情况。最好我将使用默认的会员资格提供程序。

我很难决定是从头开始还是使用 ASP.NET 已经提供的功能。

4

3 回答 3

1

我决定不使用 ASP.NET 成员资格提供程序及其默认表,因为可能会在未来版本中引入更改,因此我最终最终使用了 OmidID 的这个自定义实体框架提供程序,尽管我不得不对其进行大量调整。但我现在可以说,我们有一个相当完善的基于实体框架的成员资格提供程序,我们可以轻松地维护和独立于 SQL Server 中的 ASP.NET 成员资格表。

于 2010-11-06T12:47:04.443 回答
1

我建议您需要使用基于表的 Profile Provider实现,例如Scott Guthrie 在博客中提到的这个。它比开箱即用的配置文件提供程序要好得多,因为它允许您为配置文件信息定义自己的表格。在您的情况下,您将有一个表,其中包含每个用户的 Row 和 FirmId 以及您喜欢的任何其他内容,例如昵称、社会安全号码等。

它适用于默认的会员资格提供程序,因此您无需对其进行任何更改。示例中有两种实现,一种是基于存储过程的,一种是基于表的。我更喜欢第二种,但它们都很容易使用。

默认配置文件提供程序有点垃圾,因为它将用户的所有信息存储在一个字段中。我建议的提供商以非常有效的方式解决了这个问题。

于 2010-09-13T14:08:48.700 回答
0

我会将 ASP.NET 成员资格视为一项单独的服务。只需按原样使用它并在其上添加任何其他功能。

在这种情况下,只需创建一个将用户链接到公司的表,但不要更改 ASP.NET 表。如果您需要存储有关用户的任何其他信息,请将其放在与 ASP.NET 成员资格用户表相关联的另一个表中。

更新:我已经开始使用这个 ASP.NET MVC 区域来管理用户和角色https://github.com/TroyGoode/MembershipStarterKit。它配备了所有必要的模型、视图和控制器,并且经过了全面的单元测试。不到一个多小时就将它集成到我的网站并启动并运行。

于 2010-09-13T14:04:56.820 回答