如何在ViewModel中使用IPagedList分页功能并加入ASP .NET MVC

托尼·史密斯

我是ASP .NET MVC的新手,我正在尝试通过viewmodel和join实现IPagedList分页功能。对于普通页面,分页和搜索工作正常,但是我无法使用viewmodel和join。

我正在采用这种方法:http : //www.asp.net/mvc/overview/getting-started/getting-started-with-ef-using-mvc/sorting-filtering-and-paging-with-the-entity-框架在asp-net-mvc应用程序中

这是我的ViewModel类:

 public class SponserDisplayViewModel
    {
        public Sponser Sponser { get; set; }
        public SponserDetail SponserDetail { get; set; }
        public SponserType SponserType { get; set; }
    } //--- Here All three are different classes.

这是我在Controller中尝试过的:

public ActionResult Index(string searchString, int? page, string btnSearch)
        {
            var viewModel = from s in db.Sponsers
                            join st in db.SponserTypes on s.SponserTypeId equals st.Id into st2
                            from st in st2.DefaultIfEmpty()
                            select new SponserDisplayViewModel { Sponser = s, SponserType = st };

            if (btnSearch == "Reset")
            { searchString = string.Empty; }
            if (!String.IsNullOrEmpty(searchString))
            {
                viewModel = from s in db.Sponsers
                            join st in db.SponserTypes on s.SponserTypeId equals st.Id into st2
                            from st in st2.DefaultIfEmpty()
                            where st.Name.Contains(searchString)
                            select new SponserDisplayViewModel { Sponser = s, SponserType = st };
            }
            int pageSize = 20;
            int pageIndex = 1;
            pageIndex = page.HasValue ? Convert.ToInt32(page) : 1;


//==================Getting error here
            IPagedList<SponserDisplayViewModel> po = from s in db.Sponsers
                                            join st in db.SponserTypes on s.SponserTypeId equals st.Id into st2
                                            from st in st2.DefaultIfEmpty().OrderBy(a => a.DisplayOrder).ToPagedList(pageIndex, pageSize)
                                            select new SponserDisplayViewModel { Sponser = s, SponserType = st };

            return View(po);
        }

请建议

托尼·史密斯

得到了我的答案:

var po = from s in db.Sponsers
         join st in db.SponserTypes on s.SponserTypeId equals st.Id into st2
         from st in st2.DefaultIfEmpty
         orderby st.DisplayOrder
         select new SponserDisplayViewModel { Sponser = s, SponserType = st };
return View(po.ToPagedList(pageIndex, pageSize));

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在部分视图中使用分页,asp.net mvc

来自分类Dev

在部分视图中使用分页,asp.net mvc

来自分类Dev

如何在ASP.NET MVC中使用Dache的CacheClient?

来自分类Dev

如何在ASP.NET MVC中使用部分视图?

来自分类Dev

如何在ASP.NET MVC中使用AngularJS?

来自分类Dev

如何在ASP.NET MVC中使用ViewModels?

来自分类Dev

如何在ASP.NET MVC中使用ViewModels?

来自分类Dev

如何在 ASP.NET MVC 5 中使用 applozic

来自分类Dev

如何在ASP.NET MVC中使用razor viewmodel将c#guid值分配给javascript变量?

来自分类Dev

如何在ASP.NET MVC 4中使用ViewModel(IEnumerable)更新我的数据库

来自分类Dev

如何在ASP.NET MVC中使用razor viewmodel将c#guid值分配给javascript变量?

来自分类Dev

ASP.NET MVC 分页不适用于 ViewModel

来自分类Dev

如何在ASP.NET MVC中使用Grid.mvc导出数据

来自分类Dev

如何在ASP.NET MVC中使用Grid.mvc导出数据

来自分类Dev

如何在ASP.NET MVC项目中使用.NET的GroupDocs Viewer?

来自分类Dev

在ASP.Net MVC中使用异步

来自分类Dev

在 ASP.Net-MVC 中使用异步

来自分类Dev

如何在ASP.NET MVC中使用选择列表返回多个值?

来自分类Dev

如何在Asp.net MVC中使用JQuery从Webgrid行选择中触发PartialView

来自分类Dev

在ASP.NET MVC索引视图中如何在页面大小中使用下拉列表?

来自分类Dev

如何在Asp.Net 5(MVC 6)中使用Entity Framework 6.x

来自分类Dev

如何在ASP.Net MVC中使用“任务”重定向到操作

来自分类Dev

如何在ASP.Net MVC3 Razor中使用多个复选框

来自分类Dev

如何在asp.net mvc中的查询字符串值中使用/

来自分类Dev

如何在ASP.NET MVC中使用IP地址获取地理位置

来自分类Dev

如何在ASP.NET MVC 4中使用Ninject从Web.config绑定设置?

来自分类Dev

如何在ASP.NET MVC中使用部分视图模型

来自分类Dev

如何在Asp.net MVC 6中使用NHaml(找不到模板错误)

来自分类Dev

如何在ASP.NET MVC框架中使用Teleric Treeview控件?

Related 相关文章

  1. 1

    在部分视图中使用分页,asp.net mvc

  2. 2

    在部分视图中使用分页,asp.net mvc

  3. 3

    如何在ASP.NET MVC中使用Dache的CacheClient?

  4. 4

    如何在ASP.NET MVC中使用部分视图?

  5. 5

    如何在ASP.NET MVC中使用AngularJS?

  6. 6

    如何在ASP.NET MVC中使用ViewModels?

  7. 7

    如何在ASP.NET MVC中使用ViewModels?

  8. 8

    如何在 ASP.NET MVC 5 中使用 applozic

  9. 9

    如何在ASP.NET MVC中使用razor viewmodel将c#guid值分配给javascript变量?

  10. 10

    如何在ASP.NET MVC 4中使用ViewModel(IEnumerable)更新我的数据库

  11. 11

    如何在ASP.NET MVC中使用razor viewmodel将c#guid值分配给javascript变量?

  12. 12

    ASP.NET MVC 分页不适用于 ViewModel

  13. 13

    如何在ASP.NET MVC中使用Grid.mvc导出数据

  14. 14

    如何在ASP.NET MVC中使用Grid.mvc导出数据

  15. 15

    如何在ASP.NET MVC项目中使用.NET的GroupDocs Viewer?

  16. 16

    在ASP.Net MVC中使用异步

  17. 17

    在 ASP.Net-MVC 中使用异步

  18. 18

    如何在ASP.NET MVC中使用选择列表返回多个值?

  19. 19

    如何在Asp.net MVC中使用JQuery从Webgrid行选择中触发PartialView

  20. 20

    在ASP.NET MVC索引视图中如何在页面大小中使用下拉列表?

  21. 21

    如何在Asp.Net 5(MVC 6)中使用Entity Framework 6.x

  22. 22

    如何在ASP.Net MVC中使用“任务”重定向到操作

  23. 23

    如何在ASP.Net MVC3 Razor中使用多个复选框

  24. 24

    如何在asp.net mvc中的查询字符串值中使用/

  25. 25

    如何在ASP.NET MVC中使用IP地址获取地理位置

  26. 26

    如何在ASP.NET MVC 4中使用Ninject从Web.config绑定设置?

  27. 27

    如何在ASP.NET MVC中使用部分视图模型

  28. 28

    如何在Asp.net MVC 6中使用NHaml(找不到模板错误)

  29. 29

    如何在ASP.NET MVC框架中使用Teleric Treeview控件?

热门标签

归档