Когда я запускаю программу, она работает отлично. Однако, как только я нажимаю кнопку «Войти», он сообщает мне:
Описание: HTTP 404. Ресурс, который вы ищете (или одна из его зависимостей), мог быть удален, если бы его имя изменен, или временно недоступен. Просмотрите следующий URL-адрес и убедитесь, что он написан правильно.
Запрошенный URL-адрес: / LoginController / Authorize
Я проверил все, и все написано правильно . Я новичок в этом и не могу понять, что делаю не так. Мы будем очень признательны за любые указания.
Внутри папки App_Start
у меня есть файл RouteConfig.cs
. Он содержит следующее:
namespace CoffeeShop_Web_App
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "LoginController", action = "Index", id = UrlParameter.Optional }
);
}
}
}
У меня есть один контроллер, это мой LoginController.cs
, который содержит следующее.
namespace CoffeeShop_Web_App.Controllers
{
public class LoginController : Controller
{
// GET: Login
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Authorize()
{
return View();
}
}
}
Наконец, мой единственный вид Index.cshtml
, который содержит следующее .
@model CoffeeShop_Web_App.Models.OwnerLogin
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Login</title>
<style>
#login-div {
position: absolute;
left: 40%;
top: 40%;
border: 1px solid #ccc;
padding: 10px 10px;
}
</style>
</head>
<body>
<div id="login-div">
@using (Html.BeginForm("Authorize", "LoginController", FormMethod.Post))
{
<table>
<tr>
<td></td>
<td style="text-decoration:underline">Coffee Shop</td>
</tr>
<tr>
<td>
@Html.LabelFor(model => model.USERNAME)
</td>
<td>
@Html.EditorFor(model => model.USERNAME)
</td>
</tr>
<tr>
<td></td>
<td>@Html.ValidationMessageFor(model => model.USERNAME)</td>
</tr>
<tr>
<td>
@Html.LabelFor(model => model.PASSWORD)
</td>
<td>
@Html.EditorFor(model => model.PASSWORD)
</td>
</tr>
<tr>
<td></td>
<td>@Html.ValidationMessageFor(model => model.PASSWORD)</td>
</tr>
<tr>
<td></td>
<td>
<input type="submit" name="name" value="Login" />
<input type="reset" name="name" value="Clear" />
</td>
</tr>
</table>
}
</div>
<script src="~/Scripts/jquery-3.4.1.min.js"></script>
<script src="~/Scripts/jquery.validate.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>
</body>
</html>