asp.net-mvc - 强类型 View - 通过编辑/创建表单发布附加数据

标签 asp.net-mvc asp.net-mvc-2

我有一个简单(希望如此)的场景。

  • 座位表
  • 计算机表
  • SeatComputers 表(因为一个座位可以分配多台计算机)

我有一个针对“座位”的强类型“编辑” View 。我已经设法在该页面上获得一个多选列表,以便分配或取消分配计算机(jquery 添加/删除项目)。

但是,当我提交表单时,选择列表的内容不会发布到 Controller 操作。

我认为这是因为“计算机”选择列表不是模型属性。

有没有办法在模型属性之外将附加数据 POST 到 Controller ?

我的表格看起来像这样: alt text

最佳答案

您不需要发布此列表,因为您已经将它存储在数据库中,并且您甚至有一个存储库来获取它,不是吗?所以唯一需要发布的是用户选择,因为这是您唯一不知道的。在 POST 操作中,使用存储库在您的 View 模型中重建列表,就像您在呈现表单的 GET 操作中所做的一样。

Is there anyway to POST the additional data to the controller outside of model's properties?

当然,只需将它们作为输入字段包含在内,这样它们的值就会通过 POST 发送到您的 Controller 操作中:

[HttpPost]
public ActionResult Index(SomeViewModel model, string param1, string, param2)
{
    ...
}

但我再次坚持:你的情况不需要这个。

关于asp.net-mvc - 强类型 View - 通过编辑/创建表单发布附加数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3671817/

相关文章:

c# - SQL Linq 预留可用性

c# - 采用 MVC 4 或 5 的 MEF - 可插拔架构 (2014)

c# - 如何在 POST 上传递 Url 参数?

c# - 无法将 HttpPostedFileBase 保存到 session 变量并使用两次

asp.net - Asp.Net MVC 中的 301 重定向

asp.net - 我可以在 Orchard CMS 中使用我的 Ninject .NET 项目吗?

c# - 在 MVC 中使用 EF 创建多个数据库并将数据库名称作为 web.config 中的变量传递给 InitialCatalogue

asp.net-mvc-2 - 带有 LinkText = 绝对 URL 的 ASP.NET MVC ActionLink

asp.net-mvc - nuget:我应该提交包文件夹的全部内容吗?

asp.net-mvc - 使用 MongoDB 和 NoRM 实现博客 : Relationships?