0
我有一個關於局部視圖的問題。我想顯示在我創建的標題登錄表單中。在HomeController中,我有兩個操作:一個是Login,另一個是使用httppost方法登錄。 在局部視圖(_Layout.cshtml)我有一個碼 - 僅發送頁腳DIV:mvc問題,局部視圖顯示
<td style="text-align:center">
<h3>Bookstore</h3>
@Html.Partial("_LoginPartial")
</td>
在登錄視圖我有:
@using(Html.BeginForm("Login", "Home", FormMethod.Post)){
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<table>
<tr>
<td>@Html.LabelFor(a=>a.Username)</td>
<td>@Html.TextBoxFor(a=>a.Username)</td>
<td>@Html.ValidationMessageFor(a=>a.Username)</td>
</tr>
<tr>
<td>@Html.LabelFor(a=>a.Password)</td>
<td>@Html.PasswordFor(a=>a.Password)</td>
<td>@Html.ValidationMessageFor(a=>a.Password)</td>
</tr>
<tr>
<td>
<input type="submit" value="Login" />
</td>
</tr>
</table>}
控制器
public ActionResult Login()
{
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Login(Users u)
{
if (ModelState.IsValid) {
using (DatabaseLoginEntities dl = new DatabaseLoginEntities()) {
var v = dl.Users.Where(a => a.Username.Equals(u.Username) && a.Password.Equals(u.Password)).FirstOrDefault();
if (v != null) {
Session["LogedUserId"] = v.UserAccountID.ToString();
Session["LogedUserFullName"] = v.FullName.ToString();
return RedirectToAction("AfterLogin");
}
}
}
return PartialView("_LoginPartial", u);
}
當按登錄按鈕,mvc將我切換到顯示登錄窗體的單獨頁面。我不希望這種情況發生。它必須留在標題中。功能是好的,但我有問題如何只顯示標題。有沒有人有想法我錯了?
顯示控制器代碼登錄行動 – JB06