ASP.NET MVC 3 Partial View在视图中从动态列表动态呈现和链接

在我的MVC 3应用程序中,我将有一个包含局部视图的视图。 视图本身将包含动态生成的链接列表。 该链接必须使局部视图呈现该链接项的详细信息。

我会使用Ajax吗? 如果是这样,既然我以前没有使用过Ajax,那么有没有在MVC 3应用程序中使用它的文档?

此外,当首次加载视图时,将不加载局部视图或理想地显示另一个单独的局部视图。 关于这样做的好方法的任何想法?

谢谢您的帮助。

创建一个返回PartialViewResult操作方法

[HttpGet] public ActionResult DetailedLinkInfo(int someIdentifier) { var detailedLinkInfo = GetFromSomewhere(); return PartialView(detailedLinkInfo ); } 

然后创建一个局部视图 ,强类型为detailedLinkInfo类型(假设它是一个DynamicLink

 @model WebApplication.Models.DynamicLink @* bunch of HTML for the detailed info *@ 

然后在客户端使用jQuery 。 为所有链接提供一个类,以便更容易挂钩事件:

 $(function() { $('a.dynamic-link').click(function() { $.get('/SomeController/DetailedLinkInfo', someIdentifier: $(this).attr('id'), function(data) { $('#some-div').html(data); }); }); }); 

最终结果:您单击其中一个链接,jQuery将对您的控制器操作执行AJAX GET,然后将结果绑定到div。

HTH

我发现解决这个问题的最简单方法是使用MVC 3框架附带的Ajax助手。 Pluralsight上的MVC 3的Ajaxvideo在简洁地解释如何使用此function的基础知识方面做了非凡的工作。