加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 在ASP.NET MVC 5中将整个对象从视图传递到控制器

发布时间:2020-12-15 23:35:04 所属栏目:百科 来源:网络整理
导读:有没有办法将整个对象从ASP.NET MVC 5视图传递给控制器???这是我的情况: 我有一个显示数据库表中所有行的视图 视图的模型是IEnumerable 每行在其数据之后都有一个链接,该数据通向scaffolded UPDATE视图 有没有办法将整个对象传递给Update控制器方法,以便它
有没有办法将整个对象从ASP.NET MVC 5视图传递给控制器???这是我的情况:

>我有一个显示数据库表中所有行的视图
>视图的模型是IEnumerable
>每行在其数据之后都有一个链接,该数据通向scaffolded UPDATE视图

有没有办法将整个对象传递给Update控制器方法,以便它最初用旧数据填充表单输入?就像是:

@Html.Action("Update me!","Update",new { objectFromModelList })

然后在控制器中

public ActionResult Update(MyType parameter)
    {
        return View(parameter);
    }

或类似的东西.请帮助,我是新手,无法在任何地方找到答案.

解决方法

你的物品可能太大了!查询字符串对您可以通过浏览器传递的数据量有限制.您应该考虑传递一个唯一的id值(记录)并使用它在您的action方法中从db获取整个记录并将其传递给视图.

@foreach(var item in SomeCollection)
{
  <tr>
    <td> @Html.Action("Update me!",new {  id = item.Id }) </td>
  </tr>
}

并在动作方法

public ActionResult Update(int id)
{
    var item = GetItemFromId(id);
    return View(item);
}

假设GetItemFromId方法从唯一的id值返回方法/视图模型.基本上,您可以使用db表/存储库中的唯一ID获取整个记录.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读