ASP.NET: ошибка - ошибка сервера в приложении '/'

Я работаю над проектом ASP.NET MVC, и каждый раз, когда я пытался запустить мой взгляд Register.cshtml я получаю эту ошибку:

Server Error in '/' Application.

The resource cannot be found.

Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly. 

Requested URL: /User/Register

я пытаюсь разработать страницу регистрации с кодом просмотра:

  @{
        ViewBag.Title = "Register";
        Layout = "~/Views/Shared/_Layout.cshtml";
    }

<h2>Register</h2>

<form action='@Url.Action("Register", "Controller")'>

    <input type="hidden" name="FormType" value="A" />
    <input type="hidden" name="FormType" value="B" />
    <input type="text" name="Name" placeholder="enter your name" />
    <input type="text" name="Password" placeholder="enter your name" />
    <input type="radio" name="typeOfForm" class="radioBtn" value="A">Form A
    <input type="radio" name="typeOfForm" class="radioBtn" value="B">Form B
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
    <div style="display: none" id="formA" action="/actionA">
        <input type="text" name="City" placeholder="City" />  <input type="submit" value="Register Me!" />
    </div>

    <div style="display: none" id="formB" action="/actionB">
        <input type="text" name="Age" placeholder="Age" /><input type="submit" value="Register Me!" />
    </div></form>

<script>
    $('.radioBtn').click(function () {
        var formType = $(this).val();
        //alert(formType);
        if (formType == "A") {
            $('#FormA').show();
            $('#FormB').hide();
        } else {
            $('#FormB').show();
            $('#FormA').hide();
        }
    });</script>

с UserController.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace BootstrapSite4.Controllers
{
    public class UserController : Controller
    {   [HttpGet]
        [HttpPost]
        // GET: User
        public ActionResult Register(char FormType, string name, string password)
        {
            Seller S = new Seller();
            DeliveryMan D = new DeliveryMan();
            if (FormType=='A')
                S.Name = name;
            else 
                D.Name = name;
            return View();}}}

Я попытался изменить мой RegisterRoutes, но все еще получаю ту же ошибку.. Я думаю, что моя ошибка только с местоположением! просто краткое описание идеи регистрации: у меня есть два типа пользователей, которые будут заполнять регистрационную форму, и в зависимости от того, что они выбрали (в переключателях), остальная часть формы появится на той же странице, чтобы позволить им затем продолжить регистрацию добавить его в нужную базу данных.

1 ответ

Решение

Вам нужно добавить HttpGetRegister метод к UserController также:

[HttpGet]
public ActionResult Register()
{
    return View();
}

Помните, что вам нужно 2 метода регистрации:

  1. GET - Запрашивает данные у ресурса - в этом случае просит перейти в представление "Регистрация".
  2. POST - Отправка данных - в этом случае отправляет информацию о пользователях на сервер, чтобы зарегистрировать пользователя.

Больше чтения по Http Get and Post

Другие вопросы по тегам