Vag*_*gue 15 asp.net-core-mvc asp.net-core
此表正确填充@device.DeviceId但未传递@device.DeviceId给控制器操作.
<table border="1" cellpadding="10">
@foreach (var device in @Model.Devices)
{
<tr>
<td>@device.DeviceId</td>
<td>@device.DeviceName</td>
<td>
<a asp-action="DeleteDevice"
asp-controller="Device"
asp-route-id="@device.DeviceId" asp->
Delete
</a>
</td>
</tr>
}
</table>
Run Code Online (Sandbox Code Playgroud)
控制器动作签名是
public async Task<IActionResult> DeleteDevice(int deviceId)
Run Code Online (Sandbox Code Playgroud)
调用该操作但deviceId= 0.
如何确保@device.DeviceId正确传递给操作?
Jam*_*tan 29
将控制器操作更改为:
public async Task<IActionResult> DeleteDevice(int id)
Run Code Online (Sandbox Code Playgroud)
或者,更改a标记以使asp-route-*属性与参数的名称匹配,如下所示:
<a asp-action="DeleteDevice"
asp-controller="Device"
asp-route-deviceId="@device.DeviceId">
Delete
</a>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9673 次 |
| 最近记录: |