如何在VB.Net MVC视图中使用PagedList

时间:2012-08-15 19:29:22

标签: asp.net-mvc vb.net asp.net-mvc-3

我一直在阅读此Cannot use NuGet PagedList ASP.NET MVC # View等帖子以及此http://czetsuya-tech.blogspot.com/2011/05/mvc3-dynamic-search-paging-using.html等文章,但我无法在我的视图中加载分页列表模型。它适用于我的控制器,但代码如下:

@ModelType PagedList.IPagedList(Of MyBlog.Company)

...似乎不起作用(即我似乎无法访问该PagedList类;它说它没有定义)。我该怎么做才能使用PagedList?我甚至尝试从NuGet安装PagedList和PagedList.MVC,但仍然没有。

我只是想完成本教程http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/sorting-filtering-and-paging-with-the-entity-framework-in-an-asp-net-mvc-application

似乎很多人都在努力解决这个问题。

感谢您的帮助。

编辑:这篇博文完全描述了我的问题:

http://www.1771.in/using-pagedlist-in-vb.html

那里没有列出答案,所以也许别人知道该怎么做。

1 个答案:

答案 0 :(得分:2)

好的,我的VB.NET有点生疏,但让我们看看我们能在这里做些什么。

  1. 创建新的ASP.NET MVC 3应用程序
  2. 在程序包管理器控制台中键入:Install-Package PagedList.Mvc以安装NuGet
  3. 添加模型:

    Public Class MyViewModel
        Public Property Id As Integer
        Public Property Foo As String
    End Class
    
  4. 然后更新HomeController.vb

    Imports PagedList
    
    Public Class HomeController
        Inherits System.Web.Mvc.Controller
    
        Function Index() As ActionResult
            Dim model = Enumerable.Range(1, 250).Select(Function(x) New MyViewModel With {.Id = x, .Foo = "foo " & x})
            Dim viewModel = model.ToPagedList(1, 5)
            Return View(viewModel)
        End Function
    End Class
    
  5. 最后定义Index.vbhtml视图:

    @ModelType PagedList.IPagedList(Of MvcApplication1.MyViewModel)
    
    ...