2

我一直在尝试编写一个开源配置文件提供程序来处理 PostgreSQL(我对我看到的其他可用项目的局限性和不完整性感到沮丧),但是关于人们如何使用它的文档和示例却出奇地少. 即使是 SO 标签asp.net-profiles也有超过 100 个相关的问题。

我越是努力让它发挥作用,它似乎就越不实用。附加值似乎不能证明相关的复杂性是合理的;此外,它似乎只适用于有限范围的 Web 项目,无需大量额外工作。

我觉得我正在得出这样的结论:它不是一种流行的技术,并且有更好的方法来保持更强大的基于用户的信息集。

我对此的看法是否存在根本性的缺陷?这是广泛使用的吗?我正处于放弃我的个人资料提供者的风口浪尖,因为它似乎没有什么价值。

4

2 回答 2

3

IPrincipal出于一个简单的原因,我一直避开 ASP .NET 成员资格提供程序而支持自定义实现。我几乎从不需要它提供的开箱即用功能。

任何自定义实现都意味着创建您自己的MembershipProvider. 在我从未实施过的其他方法中,它包括像RequiresQuestionAndAnswer和之类的奇迹MaxInvalidPasswordAttempts。它会强制您执行您可能不需要的实现,并且会花费您更多时间来正确完成。

当然,您可以作弊并放入NotImplementedException您并不特别在意的方法,但是有哪个思想正确的编码人员会在生产系统中对此感到满意?:D

我真的很喜欢微软的很多东西,但我的经验是,他们的很多“开箱即用”解决方案在香草模式下都很好,但是当你偏离常规时,车轮往往会脱落。因此,需要一点樱桃采摘。我的建议?把这个留在藤上。

于 2012-01-03T17:09:33.853 回答
1

不,asp.net中的Profile系统没有被广泛使用,主要是因为你提到的原因。只是对很多人没用。

最简单的解决方案是在您的应用程序中简单地创建一个配置文件表,然后在 Membership 系统的 ProviderUserkey 上键入它。

于 2012-01-03T17:04:40.710 回答