当前位置 : 主页 > 网络编程 > ASP >

asp.net – 部分查看并将数据传递给布局MVC3

来源:互联网 收集:自由互联 发布时间:2021-06-24
我想通过布局和我的方式显示所有页面的类别: 这里我的模型(NewsCategoriesModel) using System;using System.Collections.Generic;using System.ComponentModel;using System.ComponentModel.DataAnnotations;using System.Globa
我想通过布局和我的方式显示所有页面的类别:
这里我的模型(NewsCategoriesModel)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Globalization;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Security;


namespace GiaoXuKeSat.Models
{
    public class NewsCategoriesModel
    {
        public int NewsCategoriesID { get; set; }
        public string NewsCategoriesName { get; set; }
    }
}

这里是Partialview(_NewsCategories)

@using System.Linq;


@using System.Linq;
@model IEnumerable<GiaoXuKeSat.Models.dms_NewsCategory>

@foreach (var item in Model) {
  <ul id="dmsMenuULUL">
     <li>@item.NewsCategoriesName</li>
</ul>     
}

然后我将部分视图打印到布局

@Html.Partial("_NewsCategories");

但是我没有将Object引用设置为对象的实例.

@foreach (var item in Model) {
您需要将部分视图所需的模型传递给它.如.

@Html.Partial("_NewsCategories", Model.NewsItems);

如果您退出模型,则只需将当前视图模型传递给部分模型.您也可以使用ViewBag.

如果您从主页/布局页面调用Partial,则不太可能在每个页面上都有您的模型.所以在这种情况下,最好创建一个控制器/动作,将您的新闻项模型返回到局部视图,然后用…调用

@Html.Action("NewsCategories", "NewsController");

然后,它将运行指定的操作并显示操作调用的局部视图.

网友评论