Я новичок в C # ASP.Net MVC материал, пришедший из Java / Spring. У меня проблемы с привязкой модели к форме и ее передачей. Он всегда входит в контроллер как ноль. Я пробовал разные вещи безрезультатно. Должно быть что-то простое, я делаю не так. Есть идеи?
// Просмотр
@model BensHub.Models.VisitorMessage
@using (Ajax.BeginForm(
"PostMessage",
"VisitorBoard",
new AjaxOptions { HttpMethod = "POST" }))
{
@Html.TextBoxFor(msg => msg.Name, new { @class = "board-
field", @style = "margin-top:8px;", @minlength
="1",maxlength = "28", placeholder ="Name" })
@Html.TextAreaFor(msg => msg.Message, new { @class =
"board-field", @rows = "4", @minlength = "1", @maxlength =
"128", @placeholder = "Something nice?", })
<input class="board-submit" type="submit" value="Say It"/>
}
// Контроллер
namespace BensHub.Controllers
{
public class VisitorBoardController : Controller
{
[HttpPost]
public ActionResult PostMessage(VisitorMessage message)
{
if (ModelState.IsValid)
{
}
return Json(message);
}
}
}
// Маршрут
routes.MapRoute(
"MessagePost",
"VisitorBoard/PostMessage",
new { controller = "VisitorBoard", action = "PostMessage" }
);
// Модель
namespace BensHub.Models
{
public class VisitorMessage
{
[Key]
public int Id { get; set; }
public DateTime DateTime { get; set; }
[Required]
[StringLength(28, MinimumLength = 1)]
public string Name { get; set; }
[Required]
[StringLength(128, MinimumLength = 1)]
public string Message { get; set; }
}
}