微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 ViewModel Asp.net MVC 中使用 PagedList

如何解决在 ViewModel Asp.net MVC 中使用 PagedList

我的目的:在一页上显示来自不同表格的数据 问题:当我想在 viewmodel 中使用 Pagelist 时,我无法在视图端调用数据。也就是说,无法访问 Model.blog 或 Model.kullaniciYazi。

我也用过但失败了:@model PagedList.IPagedList https://www.unlusoynakliyat.com/

视图模型

public class viewmodel
{
    public PagedList.IPagedList<Blog>  blog { get; set; }
    public PagedList.IPagedList<KullaniciYazi> kullaniciYazi { get; set; }
}

控制器

public ActionResult arama(string p,int sayfa=1)
    {
        viewmodel vm = new viewmodel();
        var bul = from x in db.Blog where x.Durum==true select x;
        var bul2 = from x in db.KullaniciYazi where x.YaziDurum == true select x;
        
        if (!string.IsNullOrEmpty(p) && p!=null)
        {
            if (bul.Where(x => x.Baslik.Contains(p)) !=null || bul2.Where(x => x.YaziBaslik.Contains(p)) !=null)
            {
                vm.blog = bul.Where(x => x.Baslik.Contains(p)).ToList().ToPagedList(sayfa,5);
                vm.kullaniciYazi = bul2.Where(x => x.YaziBaslik.Contains(p)).ToList().ToPagedList(sayfa,5);
               
                if (vm.blog.Count!=0 || vm.kullaniciYazi.Count!=0)
                {
                    return View(vm);
                }
                else
                {
                    ViewBag.mesaj = "aradığınız bulunamamıştır!";
                    return View();
                }
                
                
            }
            else
            {
                ViewBag.mesaj = "aradığınız bulunamamıştır!";
                return View();
            }
            
        }
        else
        {
            ViewBag.mesaj = "aradığınız bulunamamıştır!";
            return View();

        }
    }

查看

@using PagedList
@using PagedList.Mvc
@model Proje.Models.Siniflar.viewmodel

 @{
   if (Model != null)
      {
         foreach (var x in Model.blog)
         {           
                <h2>@x.Baslik</h2>
                @Html.Raw(x.metin(0,200) + " ...")

         }



         foreach (var x in Model.kullaniciYazi)
         {
               @Html.Raw(x.aciklama(0,70) + " ...")
         }
      }

 }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。