如果我需要实现自己的
MembershipProvider
类,我必须自己实现所有所需的服务,那么通过实现MembershipProvider
派生类与编写自己的MySecurity
类相比,我能获得什么优势?MembershipProvider
类,我必须自己实现所有所需的服务,那么通过实现MembershipProvider
派生类与编写自己的MySecurity
类相比,我能获得什么优势?如果您只需要与默认成员资格提供程序之一“稍有不同”的东西,那么您可能应该考虑继承内置提供程序或更好的第三方提供程序之一,并通过所需的附加功能进行扩展或覆盖您想要更改的功能。
从技术上讲,通过使用现有的模型,您应该能够将提供程序轻松地放入其他Web应用程序中,以用很少的努力替换其成员资格系统,从而获得某种程度的可移植性。
不幸的是,似乎有很多第三方在成员资格/个人资料方面走了自己的路线,这令人印象深刻,也令人沮丧,特别是当您已经花费了所有精力编写基于它的内容时。
话虽如此,通过使用成员资格提供程序模型,所有使用成员资格的其他控件都可以“正常工作”(即Login、LoginStatus、LoginName等),而无需编写这些控件的自定义版本。
这要看情况... 我发现它非常有用,因为我必须添加函数的概念,以便每个角色都有与之相关联的函数等等。
在那种情况下,我实现了自己的Membership和RoleProvider类,其中包含AddFunctionToRole方法... IsFunctionAssignedToUser方法... 等等
更多信息在这里