您好在我的项目中,我必须将带有用户名的欢迎消息传递给索引页面它是一个MVC3 ASP.Net Razor项目
那里有两个控制器; 一个是登录控制器,第二个是家庭控制器.从Login Controller,我必须将登录人的UserName传递给视图页面.
登录控制器重定向到另一个名为Home Controller的控制器.从那里我必须将该值传递给视图页面.那是我的问题.我试过用单个控制器来查看它的工作情况.
我无法使用单一控制器,因为登录控制器使用登录页面和家庭控制器使用主页.两者都是不同的观点.
我试过像这样,但它不起作用.你能建议一个好的方法吗?
登录控制器
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Index(LoginModel model)
{
if (ModelState.IsValid)
{
if (DataAccess.DAL.UserIsValid(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName, false);
return RedirectToAction("Index", "Home" );
}
else
{
ModelState.AddModelError("", "Invalid Username or Password");
}
}
return View();
}
Run Code Online (Sandbox Code Playgroud)
家庭控制器
public ActionResult Index()
{
return View();
}
Run Code Online (Sandbox Code Playgroud)
the*_*Law 14
你可以试试Session,比如
Session["username"] = username;
Run Code Online (Sandbox Code Playgroud)
并在其他控制器使用中恢复
var username = (string)Session["username"]
Run Code Online (Sandbox Code Playgroud)
或者在重定向中尝试使用
return RedirectToAction("Index", "Nome", new{ username: username})
Run Code Online (Sandbox Code Playgroud)
但是你的控制器的动作必须具有(字符串用户名)之类的参数
public ActionResult Index(string username)
{
return View();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
52753 次 |
| 最近记录: |