【发布时间】:2012-03-23 21:40:11
【问题描述】:
我有一个用户模型,其中包含一组设备。用户可以拥有任意数量的设备,但每个设备只能有一个用户。
我正在制作一个用于编辑用户的页面。当需要编辑用户的设备集合时,视图会显示与用户关联的设备表,每个设备旁边都有删除链接,以及当前未与用户关联的设备表,以及添加链接。视图被键入到包含两个列表的视图模型中。
这一切都在一个局部视图中,因此(理想情况下)它可以使用 Ajax 动态更新。
不幸的是,我对 ASP.NET 和 MVC3 以及一般的 Web 开发还很陌生。我应该如何编写视图来实现这一点?
我关于如何实现这一点的大部分假设都是基于this 教程。他正在做类似的事情,但他只是使用@Html.EditorFor 并将用户在文本字段中键入的任何内容添加到集合中,而不是选择现有对象。大概我需要将所选设备的 ID 发送回控制器,以便它可以在列表之间移动设备并返回更新的局部视图。但是视图是输入到视图模型中的,并且(除非我弄错了)我不能在帖子中将任意数据发送回控制器;我只能发送视图模型。因此,似乎我需要将所选设备的 ID 放入视图模型中,然后再将其发回,但如果我这样做,那么我会通过在视图中操作数据来违反整个 MVC 模式。
这是一个非常初级的问题,所以我确信有很多解决方案,但不幸的是我缺乏足够的领域知识,甚至不知道如何寻找一个。
【问题讨论】:
标签: asp.net ajax asp.net-mvc-3 partial-views