【发布时间】:2011-07-21 17:44:15
【问题描述】:
我正在.net 中建立自定义会员资格,但我不了解它们的真正好处,有什么好处?这是我继承自 MembershipProvider 的类:
public class MembershipService : MembershipProvider
{
public override bool ValidateUser(string username, string password)
{
Credencial credencial = context.Credencial.Where(x => x.Usuario == username).FirstOrDefault();
if (credencial == null) return false;
if (credencial.Senha == password)
{
return true;
}
return false;
}
}
这是我在 web.config 中的配置:
<membership defaultProvider="MembershipService" userIsOnlineTimeWindow="15">
<providers>
<clear />
<add
name="MembershipService"
type="Questiona2011.Services.MembershipService" />
</providers>
</membership>
这是我使用它们的地方:
[HttpPost]
public ActionResult Index(IndexViewModel indexViewModel)
{
if (ModelState.IsValid)
{
if (MembershipService.ValidateUser(indexViewModel.Usuario, indexViewModel.Senha))
{
FormsAuthenticationService.SignIn(indexViewModel.Usuario, false);
return RedirectToAction("Index", "Default");
}
}
return View();
}
没看懂,MembershipService这个类不需要继承自MembershipProvider。
使用继承自 MembershipProvider 的自定义会员资格的真正好处是什么?
为什么我需要从 MembershipProvider 继承?
【问题讨论】:
-
我不明白你的问题。在代码中,您的
MembershipService显然继承自MembershipProvider。您是在问为什么不必在 web.config 中指出继承? -
@Anders Abel 我在问为什么我需要从 MembershipProvider 继承?
-
如果您要将自己的成员资格完全脱离 .NET 成员资格,则不必从 MembershipProvider 继承。但请记住一件事,.NET Membership Provider 类可能会为您提供比您自己滚动的任何东西更多的保护,除非您要投入大量时间。 .NET Membership Provider 库投入了大量时间、精力和测试。与尝试推出自己的会员资格相比,您最好选择 .NET 库。
-
@Scott-Lance 您能否介绍一些有关自定义会员资格为我提供的保护、安全性(授权和身份验证)的示例?
标签: .net asp.net asp.net-membership forms-authentication roleprovider