【发布时间】:2014-03-12 06:53:18
【问题描述】:
如何将数据从控制器传递给自己?
考虑这个例子:
我有一个由两部分组成的页面:(1) 一个简单的 html 表单,其中包含几个文本框和一个提交按钮;(2) 一个表格,当按下第 (1) 部分的按钮时,表格会更新。发生这种情况时,必须将表单中的数据附加到表的末尾。
在我看来,应该存在一个List 的对象。每次按下按钮时,都会使用两个参数调用控制器:旧的对象列表和文本框值。然后,控制器生成对象,将其添加到列表中并将新列表传递给视图。使用新数据呈现视图,并将行成功添加到表中。
但是,这需要重新加载页面,感觉有点不对。
问题是,没有静态对象可以永久包含列表,或者至少在这些控制器自调用期间存在。如果有这样的话,我就不必传递整个列表(正如我所说,我什至做不到),而只需传递新的文本框值。 听说局部视图可以解决问题,但是不知道怎么解决。
我能做什么?
【问题讨论】:
-
你不能使用客户端在不去服务器端的情况下将行添加到第 2 部分吗?
-
是的,这可以通过 JavaScript 轻松实现,但由于我正在学习 ASP.NET MVC,所以如果可能的话,我想使用它的功能。
-
控制器自调用在哪里?我只看到一个返回视图的 HTTP POST 调用。那是客户端>服务器>客户端。服务器 > 服务器调用在哪里?
标签: c# asp.net-mvc-3 razor