Предположим, у меня есть две таблицы в EF, которые связаны между собой:
public partial class Table1
{
public int Id {get; set;}
public int Table2Id {get; set;}
public virtual Table2 Table2 {get; set}
}
public partial class Table2
{
public Table2()
{
Table1 = new HashSet<Table1>
}
public int Id {get; set;}
public string datastring {get; set;}
public virtual Icollection<Table1> Table
}
Я, очевидно, упростил это, но он достаточно хорошо напоминает мою реальную проблему.
Обычно я могу легко извлечь данные из формы, отправленной в jQuery, если это всего лишь одна таблица. Что я хотел бы сделать так:
form.serializeArray();
Однако в этом случае я хочу извлечь данные из моей формы, которые помещаются в «дочернюю» таблицу моей фактической таблицы.
<div class="container">
<form id="MyForm">
<input name="Table1.Table2.dataString" />
<button type="submit">save</button>
</form>
</div>
У меня такое ощущение, что этот сценарий поддерживается в. net MVC, но я понятия не имею, как на самом деле делать именование, чтобы оно понимало, что оно принадлежит детский стол.
Быстрый и грязный способ - нацелить каждое поле ввода в моей форме. Но это большая форма, поэтому я действительно хотел бы избежать этого безумия селектора.
Обновление:
Несмотря на то, что я еще не создал свой контроллер, я считаю, что он должен получить объект Table1 следующим образом:
public ActionResult UpdateTables(Table1 table1)
{
//Logic to call serviceclass
}