У меня есть форма с несколькими кнопками ввода. В пределах этой формы кнопки могут выполнять действия. 1-й кнопкой я генерирую таблицу (объект со свойством типа int [,]). Со второй кнопкой я собираюсь сделать что-то с этим объектом. Первое в порядке, второе возвращает null для модели в контроллер.
Как передать из формы этот объект с массивом внутри в контроллер? Теперь в методе SubmitForm у меня есть значение для buttonType, но матрица равна нулю (должны быть данные из таблицы). Оцените любую помощь
Модель
public class Matrix
{
public int[,] Data { get; set; }
}
Контроллер
[HttpPost]
public ActionResult SubmitForm(Matrix matrix, string ButtonType) - matrix is NULL here, how to get info from form
{
if (ButtonType == "Rotate")
{
return RotateMatrix(matrix);
}
//other code
}
[HttpPost]
public ActionResult RotateMatrix(Matrix matrix)
{
//-some code
return PartialView("_MatrixView", matrix);
}
View
@model Project.Models.Matrix
@{
ViewBag.Title = "Home Page";
var options = new AjaxOptions()
{
UpdateTargetId = "Matrix",
};
}
@using (Ajax.BeginForm("SubmitForm", "Home", FormMethod.Post, options))
{
<div id="Matrix"></div>
<input type="submit" value="Rotate" name="ButtonType" />
<input type="submit" value="Generate" name="ButtonType"/>
}
PartialView
@model Project.Models.Matrix
<table>
@for (int column = 0; column < Model.Data.GetLength(0); column++)
{
<tr>
@for (int row = 0; row < Model.Data.GetLength(1); row++)
{
var item = Model.Data[column, row];
<td>@Html.DisplayFor(m => item)</td>
}
</tr>
}
</table>