У меня есть два текстовых поля и кнопка (@ HTML.ActionLink) в представлении Login , и я хочу открыть представление page , в котором в зависимости от имени пользователя и пароля написано в этих текстовых полях я получаю соответствующего пользователя из базы данных и передаю его в представлении page , чтобы увидеть подробности об этом пользователе.
У меня есть проблема с ресурсом . когда эта проблема появляется в браузере, ссылка модифицируется так (я думаю, что проблема будет здесь):
http://localhost:50105/Users/LoginPage?Length=5
это моя кнопка:
@Html.ActionLink("Login", "LoginPage", "Users", new { @class = "btn btn-default", @style = "Color:red" })
это мой LoginPage метод действия:
[HttpPost]
public ActionResult LoginPage([Bind(Include = "UserName,Password")] User user)
{
var per = db.Users.Where
(x => x.Password == user.Password && x.UserName == user.UserName)
.FirstOrDefault();
return View("Page",per);
}
это моя страница просмотр:
@model MVCProject.Models.User
@{
ViewBag.Title = "Page";
}
<h2>Page</h2>
<div>
<h4>User</h4>
<hr />
<dl class="dl-horizontal">
<dt>
@Html.DisplayNameFor(model => model.FirstName)
</dt>
<dd>
@Html.DisplayFor(model => model.FirstName)
</dd>
<dt>
@Html.DisplayNameFor(model => model.LastName)
</dt>
<dd>
@Html.DisplayFor(model => model.LastName)
</dd>
</dl>
</div>
это мой пользователь класс:
public class User
{
public int UserID { get; set; }
public string UserName { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Password { get; set; }
}
это мой метод RegisterRoutes в RouteConfig класс:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
это мой логин просмотр:
@model MVCProject.Models.User
@{
ViewBag.Title = "Login";
}
</br>
<h2 align="Center">Login</h2>
<div>
</br>
</br>
</br>
<div align="center">
@Html.EditorFor(model => model.UserName, new { htmlAttributes = new
{ @class = "form-control", @placeHolder = "UserName" } })
@Html.ValidationMessageFor(model => model.UserName, "", new { @class = "text-danger" })
</br>
@Html.EditorFor(model => model.Password, new { htmlAttributes = new {
@class = "form-control", @placeHolder = "Password", @type="password"} })
@Html.ValidationMessageFor(model => model.Password, "", new { @class =
"text-danger" })
</br>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10" align="center">
@Html.ActionLink("Login", "LoginPage", "Users", new { @class = "btn btn-default", @style = "Color:red" })
</div>
</div>