我想要两个部分视图,一个用于SEARCH,另一个用于SEARCHRESULTS.
我想在SEARCH局部视图表单上单击“搜索”按钮时更新SEARCHRESULTS. SEARCHRESULTS需要从SEARCH局部视图中提供表单数据.
我不完全确定如何解决这个问题.我可以从SEARCH局部视图的Controller操作更新SEARCHRESULTS局部视图吗?
解决方法
一般讨论;一般交流
在MVC设计模式中,视图彼此不了解.它们可以通过组合多个部分视图的视图的概念绑定在一起,但即使这样,部分也彼此无知.这个概念适用于ASP.NET MVC. Mike Brind在他的 ASP.NET MVC Partial Views and Strongly Typed Custom ViewModels帖子中很好地描述了partials和ViewData.
在MVC设计模式中,视图彼此不了解.它们可以通过组合多个部分视图的视图的概念绑定在一起,但即使这样,部分也彼此无知.这个概念适用于ASP.NET MVC. Mike Brind在他的 ASP.NET MVC Partial Views and Strongly Typed Custom ViewModels帖子中很好地描述了partials和ViewData.
具体到您的问题
要回答您的问题,只要将适当的信息传递给控制器,部分视图就可以链接到呈现不同视图的控制器操作.你如何做到这一点将取决于你想要做什么.
鉴于您的问题,我将假设SEARCH局部视图是一个带有搜索字段和按钮的简单表单.而SEARCHRESULTS是返回数据的列表.在这种情况下,您将创建一个名为Search的控制器操作,该操作接受字符串值并仅返回SEARCHRESULTS部分或包含SEARCHRESULTS部分的视图. Scott Guthrie在他的博客Passing ViewData from Controllers to Views中提供了将数据传递给视图的非常好的描述.
// returning partial public ActionResult Search(string q) { //do search ....... //................. return PartialView("SEARCHREULTS",viewdata); }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。