首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Id传递给ActionMethod

将Id传递给ActionMethod
EN

Stack Overflow用户
提问于 2015-07-02 12:38:58
回答 1查看 1K关注 0票数 1

我的表中有一个删除按钮,我正在尝试删除所选的行。

问题是,我总是在post方法中获得一个空ID。

代码语言:javascript
复制
<div>
<table class="table">
    <thead>
        <tr>
            <th>Role Name</th>
            <th>Action</th>
        </tr>
    </thead>
    @foreach (var item in Model)
    {
        <tr>
            <td>
                @Html.DisplayFor(modelItem => item.Name)
            </td>
            <td>
                @using (Html.BeginForm("Delete","Role", new { id = item.Id },FormMethod.Post))
                {
                    <div class="form-actions no-color">
                        <input type="submit" value="Delete" class="btn btn-default" /> |
                    </div>
                }
            </td>
        </tr>
    }

</table>

在我的控制器里

代码语言:javascript
复制
// POST: Jobs/Delete/5
        [HttpPost, ActionName("Delete")]
        public ActionResult Delete(int id)
        {
            IdentityRole role = _context.Roles.Find(id);
            _context.Roles.Remove(role);
            _context.SaveChanges();
            return RedirectToAction("Index");
        }

每当我单击该按钮时,id为空。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-02 13:20:37

从您的注释中,在<form>标记中生成的html是

代码语言:javascript
复制
action="/Role/Delete/b1bc13ca-a855-48b0-90e2-9e5fc081ac86"

这意味着模型的Id属性是Guid类型。将POST方法签名更改为

代码语言:javascript
复制
public ActionResult Delete(Guid id)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31184932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档