0

我正在研究 Asp.net Membership Providership Sql 以确定它是否符合我的需求并有一些基本问题。

它似乎创建了很多表,其中很多我认为我不需要。我只需要一个应用程序,不需要角色管理。我可以删除未使用的表格还是应该不理会它们?

我需要另一个表,我可以在其中将记录与使用 Sql 成员资格提供程序创建的用户相关联。使用“Membership.GetUser.ProviderUserKey.ToString()”作为该用户的主键是否安全。我想是这样,但感觉有点像我依赖于我无法控制的东西,因为管理它的是 Asp.Net。

此外,我将直接访问数据库,而不用用户登录来获取统计信息。使用 aspnet_Users.UserId (table.field) 对数据库进行 Sql 查询是否安全。我想我害怕的是,在框架更新之后,Asp.Net 会突然改变表格布局或其他东西。

4

2 回答 2

1

显然,一旦生成了表格,您就可以做任何您想做的事情,但我认为您应该考虑这样做的后果。Membership Provider 框架运行良好并得到广泛实施。如果您使用他们的实现,只需使用它并使用您想要的部分,而不要管其余部分。

当/如果他们对其进行更改以告诉我们重大更改或不进行任何重大更改时,他们将非常小心。

该框架允许您覆盖许多提供的方法,或者您可以简单地编写自己的自定义提供程序并将其大量基于开箱即用的实现。

于 2010-02-12T16:29:00.767 回答
1

ProviderUserKey 旨在存储您需要引用的任何内容,因此您可以将密钥存储到您自己的数据库中的记录中,以存储其他用户信息。我认为删除不相关的表是可以的,只要你使用的功能不碰它。

我知道它涉及到 aspnet_applications、aspnet_users...

作为最后的手段,您始终可以通过创建一个从 MembershipProvider 继承的类来创建自己的自定义成员资格提供程序。

于 2010-02-12T16:53:01.557 回答