我是ASP.NET MVC的新手,我正尝试做一个Web应用程序。此应用将有各种用户和一个管理员,可以创建请求,然后管理员可以批准或拒绝。我在使用EF的请求模型中添加了脚手架。但是问题是当我使用某个用户登录时(我们称其为user1),当他创建请求并注销后,其他用户可以看到user1请求,而我不希望这种情况发生。因此,基本上,当user1登录时,创建一个请求,注销,而user1只能看到他的请求,user2登录,创建一个请求,注销,并且用户2只能看到他的请求。
这是我的用户模型
public class User
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int UserID { get; set; }
public int Perfil { get; set; } = 2;
[Display(Name = "Nome")]
public string UserName { get; set; }
[DataType(DataType.Password)]
public string Password { get; set; }
}
这是AccountController
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Login(User users)
{
using (ApplicationDataContext db = new ApplicationDataContext())
{
bool isValid = db.Users.Any(x => x.UserName == users.UserName && x.Password == users.Password);
if (isValid)
{
var result = (from u in db.Users
where u.UserName == User.Identity.Name
select u).ToArray();
FormsAuthentication.SetAuthCookie(users.UserName, false);
return RedirectToAction("Index", "Requests", result);
}
ModelState.AddModelError("", "Nome e/ou password inválido");
return View();
}
}