我有以下看法:
<h2>
Contract</h2>
@Using Html.BeginForm()
@Html.ValidationSummary(False)
@<fieldset>
<legend>Hire Contract</legend>
<div class="editor-label">
@Html.LabelFor(Function(model) model.ContractNo)
</div>
<div class="editor-field">
@Html.DisplayTextFor(Function(model) model.ContractNo)
</div>
<div class="editor-label">
@Html.LabelFor(Function(model) model.HireId)
</div>
<div class="editor-field">
@Html.DisplayTextFor(Function(model) model.HireId)
</div>
-- More fields here ---
<div>
<table>
<tr>
<th>
Line Id
</th>
<th>
Description
</th>
<th>
Return Quantity
</th>
<th>
</th>
</tr>
<p/>
@Html.ActionLink("Add Line", "AddContractLine")
<p/>
@For Each item In Model.HireContractLines
Dim currentItem = item
@<tr>
<td>
@Html.DisplayFor(Function(modelItem) currentItem.LineId)
</td>
<td>
@Html.DisplayFor(Function(modelItem) currentItem.Description)
</td>
-- Many other fields here ...
<td>
@Html.ActionLink("Edit", "EditContractLine", New With {.id = currentItem.LineId})
|
@Html.ActionLink("Delete", "DeleteContractLine", New With {.id = currentItem.LineId})
|
@Html.ActionLink("Return Line", "ReturnContractLine", New With {.id = currentItem.LineId})
</td>
</tr>
Next
</table>
</div>
<p>
<input type="submit" value="Full Return" />
</p>
</fieldset>
控制器看起来像:
Function EditContractLine(hireLineId? As Integer) As ActionResult
Dim contractLine = GetContractLine(CInt(hireLineId))
Return View(ContractLine)
End Function
但是,当我单击 Edit Line 或 Delete Line 时,值不会传递给控制器操作。它始终为 Null。
谁能指出我的问题?任何意见将不胜感激。