我的登录名是..at controller
MemberShipProvider objMProvider = new MemberShipProvider();
var abc =RedirectToAction("Index", "Home");
if (ModelState.IsValid)
{
var checkVal = objMProvider.ValidateUser(m.username, m.password);
if (checkVal == true)
{
Session["User"] = m.username;
TempData["userName"] = m.username;
//IdentityHelper.RedirectToReturnUrl("~/User_Dashboard.aspx");
abc=RedirectToAction("Dashboard","User");
}
else if (checkVal == false)
{
abc = RedirectToAction("Index", "Home");
return abc;
}
}
我的webconfig会员资格设置...
<system.web>
<membership defaultProvider="MemberShipProvider">
<providers>
<clear/>
<add name="MemberShipProvider" type="FndooMvc.Models.Common.MemberShipProvider"
connectionStringName="mycon"
applicationName="/" />
</providers>
</membership>
<authentication mode="None" />
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
<system.webServer>
<modules>
<remove name="FormsAuthentication" />
</modules>
我的自定义成员资格提供程序logincheck代码是
public override bool ValidateUser(string username, string password)
{
return objLogin.IsValid(username,password) == true ? true : false;
}
我使用平面登录代码然后我决定根据需求使用自定义成员资格。帮助我使用此身份和原则功能与此自定义成员身份
现在我想知道为什么我的要求.IsAuthenicated
答案 0 :(得分:1)
查看this:
ASP.NET Identity系统旨在取代以前的ASP.NET成员资格和简单成员资格系统。它包括配置文件支持,OAuth集成,与OWIN一起使用,并包含在Visual Studio 2013附带的ASP.NET模板中。
中找到一篇好文章答案 1 :(得分:0)
我在身份验证请求事件中的全局配置中需要此代码块。
HttpCookie authCookie =Context.Request.Cookies[FormsAuthentication.FormsCookieName];
if (authCookie != null)
{
FormsAuthenticationTicket authTicket =
FormsAuthentication.Decrypt(authCookie.Value);
string[] roles = authTicket.UserData.Split(new Char[] { ',' });
GenericPrincipal userPrincipal =
new GenericPrincipal(new GenericIdentity(authTicket.Name),
roles);
Context.User = userPrincipal;
}
现在request.isAuthenticated工作。
我怎么会改变这个提供者并按照Hboubati的建议使用。