Я очень новичок в C#. Я просто пытаюсь заставить работать форму MVC, чтобы понять, как информация передается из представления в контроллер. Я пытаюсь отправить свою форму и обновить страницу с вводом (в конце концов, чтобы я мог выяснить, как передать данные формы в файл XML. Но я получаю сообщение об ошибке, когда нажимаю кнопку Отправить на форме. помогите, пожалуйста. Я не могу найти простой учебник, который поможет мне в этом.
Мои файлы: User.cs (модель), AddACustomerController.s c (контроллер) и AddACustomer.cs html (просмотр)
МОДЕЛЬ:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.ComponentModel.DataAnnotations;
using System.Web;
namespace WebApplication10.Models
{
public class User
{
[Required]
[Display(Name = "First Name")]
public string FirstName { get; set; }
[Required]
[Display(Name = "Last Name")]
public string LastName { get; set; }
[Required]
[Display(Name = "Role")]
public string Role { get; set; }
}
}
КОНТРОЛЛЕР:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using System.Web;
using WebApplication10.Models;
namespace WebApplication10.Controllers
{
public class AddACustomerController : Controller
{
public IActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult UserForm(Models.User person)
{
string firstname = person.FirstName;
string lastname = person.LastName;
string role = person.Role;
ViewBag.n = person.FirstName;
ViewBag.l = person.LastName;
ViewBag.r = person.Role;
return View("UserForm");
}
}
}
ПРОСМОТР:
@model WebApplication10.Models.User
@{
ViewData["Title"] = "AddACustomer";
}
<h1>AddACustomer</h1>
<h4 style="color:purple">
<b>First Name:</b> @ViewBag.f <br />
<b>Last Name:</b> @ViewBag.l <br />
<b>Role:</b> @ViewBag.r
</h4>
<hr />
@using (Html.BeginForm("UserForm", "AddACustomer", FormMethod.Post))
{
<table cellpadding="0" cellspacing="0">
<tr>
<th colspan="2" align="center">Person Details</th>
</tr>
<tr>
<td>First Name: </td>
<td>
@Html.TextBoxFor(m => m.FirstName)
</td>
</tr>
<tr>
<td>Last Name: </td>
<td>
@Html.TextBoxFor(m => m.LastName)
</td>
</tr>
<tr>
<td>Role: </td>
<td>
@Html.DropDownListFor(m => m.Role, new List<SelectListItem>
{ new SelectListItem{Text="Administrator", Value="Administrator"},
new SelectListItem{Text="Data Entry", Value="Data Entry"},
new SelectListItem{Text="Sales", Value="Sales"},
new SelectListItem{Text="Networking", Value="Networking"}
}, "Please select")
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Submit" /></td>
</tr>
</table>
}
ИЗОБРАЖЕНИЕ ВИДА:
![enter image description here](https://i.stack.imgur.com/Ms7Dj.png)
КАРТИНА ОШИБКИ, КОГДА Я НАЖИМАЮ КНОПКУ ОТПРАВИТЬ НА ФОРМУ:
![enter image description here](https://i.stack.imgur.com/gyEXg.png)