MVC4 ViewModel 存入多個Model,以及前台的顯示用法。具體類名可以參數代替


多謝版主!搞定了~把代碼分享下,讓和我一樣的菜鳥可以節約一些時間

ZhuYecontrollers代碼

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using QunZhongLuXian.Models;//項目名稱,引用自定義的Model

namespace QunZhongLuXian.Controllers
{
    public class viewModel
    {
        public List<ZuZhiJiGou> zzjgModel { get; set; }
        public List<LingDaoJiangHua> ldjhModel { get; set; }
        public List<GongZuoDongTai> gzdtModel { get; set; }
        public List<WenJianTongZhi> wjtzModel { get; set; }
        public List<XueXiJiaoLiu> xxjlModel { get; set; }

        public viewModel(List<Models.ZuZhiJiGou> zzjgList, List<Models.LingDaoJiangHua> ldjhList, List<Models.GongZuoDongTai> gzdtList, List<Models.WenJianTongZhi> wjtjList, List<Models.XueXiJiaoLiu> xxjlList)
        {
            this.zzjgModel = zzjgList;
            this.ldjhModel = ldjhList;
            this.gzdtModel = gzdtList;
            this.wjtzModel = wjtjList;
            this.xxjlModel = xxjlList;
        }
    }

    public class ZhuYeController : Controller
    {
        QunZhongLuXianContext db = new QunZhongLuXianContext();
        public ActionResult Index()
        {
            var vm = new viewModel(db.ZuZhiJiGous.ToList(), db.LingDaoJiangHuas.ToList(), db.GongZuoDongTais.ToList(), db.WenJianTongZhis.ToList(), db.XueXiJiaoLius.ToList());
            vm.zzjgModel = db.ZuZhiJiGous.ToList();
            vm.ldjhModel = db.LingDaoJiangHuas.OrderByDescending(p => p.ShiJian).ToList();
            vm.gzdtModel = db.GongZuoDongTais.OrderByDescending(p => p.ShiJian).ToList();
            vm.wjtzModel = db.WenJianTongZhis.OrderByDescending(p => p.ShiJian).ToList();
            vm.xxjlModel = db.XueXiJiaoLius.OrderByDescending(p => p.ShiJian).ToList();
            return View(vm);
        }
    }
}

對應/Views/ZhuYe/Index.cshtml視圖代碼(部分)

@using QunZhongLuXian.Models
@model QunZhongLuXian.Controllers.viewModel//引用ZhuYeControllers中自定義的viewModel類類型

中間省略,下面是通過Foreach循環顯示兩個Model的列表數據(分別是Model.ldjhModel和Model.gzdtModel)

<div class="box">
                <h1>
                    <span><a href="@Url.Action("Index", "LingDaoJiangHua")">more</a></span>領導講話
                </h1>
                <ul>
                    @foreach (var item in Model.ldjhModel)
                    {
                        <li>
                            <span class="datetime">@item.ShiJian</span>
                            <a href="@item.LuJing">@item.BiaoTi</a>
                        </li>
                    }
                </ul>
            </div>
            <div class="box">
                <h1>
                    <span><a href="@Url.Action("Index", "GongZuoDongTai")">more</a></span>工作動態
                </h1>
                <ul>
                    @foreach (var item in Model.gzdtModel)
                    {
                        <li>
                            <span class="datetime">@item.ShiJian</span>
                            <a href="@item.LuJing">@item.BiaoTi</a>
                        </li>
                    }
                </ul>
            </div>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM