所以我开始使用模板在 MVC 4 中构建一个网站,一切都很顺利。但是,我觉得模板中已经添加了很多我一点都不理解的功能,因此正确使用其中一些功能是一个挑战。其中一项功能是登录系统。
现在我设法轻松地设置并与我的外部数据库交谈,但我完全不知道模板如何知道用户名以及他已登录。
所以我试图重新创建/设置相同的功能,但是从头开始,这样我就可以理解它是如何工作的。话虽这么说……我迷路了!
[AllowAnonymous]
public ActionResult Login(LoginModel model)
{
try
{
var canLogin = Services.Login(model.Username, model.Password);
var cas = Services.CheckAcountStatus(canLogin.Token);
if (cas.Payload.Items.Exists(m => !m.IsSynchronized)) RedirectToAction("VerifyPin", "Account", cas.Payload);
return RedirectToAction("Index", "MyPage");
}
catch (CustomException ase)
{
ModelState.AddModelError("", ErrorCodeToString(ase.Error));
}
return View(model);
}
这就是我迄今为止所拥有的。
<authentication mode="Forms">
<forms name="MyName" loginUrl="~/Account/Login" timeout="30" />
</authentication>
很多示例都解释了使用 EF 等设置数据库,但恐怕这是我的外部数据库的等价物。
数据库真的需要知道用户是否登录吗?或者它只是一个饼干?
除此之外,我不知道该去哪里。如果有人至少可以为我指明一个好的方向,我将不胜感激。
最后,我唯一真正的目标是在用户登录的页面之间建立一种简单的通信方式。