我目前正在构建一个 ASP.NET MVC Web 应用程序。我的站点安全性(当前)构建在我扩展的 System.Web.Security Membership 模型的扩展之上:
- 授权属性
- 会员提供者
- 角色提供者
这对安全机制来说已经足够了——尽管它使很多事情变得复杂,我本可以更简单地完成。但是,它已经完成了,这是一次非常有用的学习经历。尽管稍后,我仍可能将其全部删除并用更特定于该站点的模型替换它 - 我想将我的所有用户配置文件信息保存在一个单独的表中,并专门为该站点建立索引和构建。
现在我已经开始开发用户个人资料了。我需要存储比基本用户登录系统更多的用户信息。我已经检查了 ProfileProvider,它似乎是一个完全不同的蠕虫罐头。我喜欢它足够灵活,我可以直接从 web.config 配置用户配置文件,而无需重新构建我的对象,而 ProfileProvider 会处理其余部分。不过,让我感到恐惧的是 PITA 会导致在我的数据库上运行查询或报告。这个事实可能会影响我对 ProfileProvider 的判断。ProfileProvider 甚至是用于此目的的正确模型吗?
我应该走与定制现有系统或定制构建自己的系统相同的道路吗?
一方面,ProfileProvider 的自定义可能是一种有用的学习体验,但另一方面,我可以看到这迅速成为报告和查询的噩梦。但是我自己的编码将使查询/报告变得非常简单,但我不会学得更少。
如果有人对 ProfileProvider 模型的使用或定制有任何经验(如果这确实是我应该使用的),并且可以为我指明有用的阅读材料的方向,或者可以引导我朝着更有用的方向前进,我将不胜感激它。
提前致谢。