FormsAuthenticationを使用して何かを保存するにはどうすればよいですか?私はUserIdをURLで保存したくありません。ASP.NET MVC 3(認証を使用)
は例えば、今、私はこのコードを持っている:
//UserController class:
[HttpPost]
public ActionResult LogOn(LogOnModel model, string returnUrl)
{
if (ModelState.IsValid)
{
if (repository.ValidateUser(model.Login, model.Password))
{
FormsAuthentication.SetAuthCookie(model.Login, model.RememberMe);
if (Url.IsLocalUrl(returnUrl))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("Project", "Index");
}
}
else
{
ModelState.AddModelError("", "Incorrect name or password.");
}
}
return View(model);
}
ProjectController
クラス:
public ViewResult Index()
{
return View(repository.GetUserProjects(
this.ControllerContext.HttpContext.User.Identity.Name));
}
ProjectRepository
:ProjectControllerとProjectRepositoryが良いコードのように見えません
ProjectsContext context = new ProjectsContext();
UsersContext uCnt = new UsersContext();
public IEnumerable<Project> GetUserProjects(String username)
{
if (String.IsNullOrEmpty(username))
throw new ArgumentNullException("username", "Login is empty");
return this.uCnt.Users
.FirstOrDefault(u => u.Login == username)
.Projects
.ToList();
}
。 ..誰かが助言を与えるかもしれない、URを使わずにUserIDを保存する方法L?これを行う最善の方法は、IDを自動化に保存することです。私は
のことです。それはセントを作る...私は明後日それを試してみます。 – RAMe0
UserDataにUserIdを保存する最初の部分は不完全なようです。誰かがそのコードを適切なクラスに説明またはラップできるので、そのコードがどこにあるのか確認できますか?ありがとう。 –