我有訂單表和OrderDetails DB中的表。使用實體框架6我已經獲得了一個模型,所以我有從它生成的類。我還從訂單表中生成控制器和視圖。如何在ASP.NET MVC中插入主 - 細節表5
Orders
folio (PK)
date
customer (FK)
OrdersDetail
folio (FK) -- to the Orders table
product (FK)
price
quantity
生成創建POST操作如下:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "folio,date,customer")] Orders order)
{
if (ModelState.IsValid)
{
db.Orders.Add(order);
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.cliente = new SelectList(db.CATCTES, "COD_CTE", "NOM_CTE", order.cliente);
return View(order);
}
這沒關係,但我需要插入到其他實體/表呢! 我已經更改了Create.cshtml表單,其中包含Orders表所需的字段,幷包含OrdersDetail的某種網格。每一行都是OrdersDetail表的新條目。
的問題是我不知道如何正確保存到其他表在訂單控制器創建行動。如果這不是正確的方法,請告訴我你的意見。
另一個值得關注的問題是如何命名輸入以正確分組並在控制器上使用提交的值?由該腳本生成的每一行,當我點擊窗體上的「+」按鈕:
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
<script>
function add_row() {
var detalle = $('#detalle');
var newRow = '<tr>' +
'<td data-title="Product">' +
'<div class="input-group">' +
'<span class="input-group-addon"></span>' +
'<input class="form-control" type="number" aria-label="Product" name="detail_array[].product" step="0.001" min="0.000" onchange="cambiar_importe(this)" required="true">' +
'</div>' +
'</td>' +
'<td data-title="Price" >' +
'<div class="input-group">' +
'<span class="input-group-addon">$</span>' +
'<input type="number" class="form-control" aria-label="Price" name="detail_array[].price" onchange="cambiar_importe(this)" step="0.001" min="0.000" required="true">' +
'</div>' +
'</td>' +
'<td data-title="Quantity">' +
'<div class="input-group">' +
'<span class="input-group-addon">$</span>' +
'<input type="text" class="importe form-control" aria-label="Quantity" name="detail_array[].quantity" step="0.001" min="0.000" readonly="true" >' +
'</div>' +
'</td>' +
'<td data-title=""><button type="button" class="btn btn-danger btn-sm" onclick="borrar_renglon(this)">Cancelar</button></td>' +
'</tr>';
detalle.append(newRow);
}
</script>
}
參考答案[這裏](http://stackoverflow.com/questions/29161481/post-a-form-array-without-successful/29161796#29161796)和[這裏] (HTTP://計算器。com/questions/28019793/submit-same-partial-view-called-multiple-times-data-to-controller/28081308#28081308) –