文章内容

2017/3/2 13:56:29,作 者: 黄兵

MVC中分布视图的创建

模板页开始

@* 文章主体开始 *@
    <article>
        <div class="content">
            <div class="container">
                <div class="content-grids">
                    <div class="col-md-8 content-main">
                        @RenderSection("featured", required: false)
                        @RenderBody()
                    </div>
                    <div class="col-md-4 content-main-right">
                        @RenderSection("search", required: false)
                        <div class="categories">
                            <h3>文章分类</h3>
                            @RenderSection("category", required: false)
                        </div>
                        <div class="archives">
                            <h3>文章归档</h3>
                            @RenderSection("archives", required: false)
                        </div>
                    </div>
                    <div class="clearfix"></div>
                </div>
            </div>
        </div>
    </article>
    @* 文章主体结束 *@

视图页面:

@section category{
    @Html.Action("Category")
    }
@section search{
    @Html.Action("Search")
    }
@section archives{
    @Html.Action("Archives")
    }
@section dailySentence{
    @Html.Action("DailySentence")
    }

之后分部视图页面:

@{
    Layout = null;
}

@foreach (var category in ViewBag.category)
{
    <li><a href="@Url.Action("CategoryList", "Home", new { id = @category.Id })">@category.CategoryName</a></li>
} 

Controll代码(注意:加了“[ChildActionOnly]”,返回了一个“PartialView()):

[ChildActionOnly]
        public ActionResult Category()
        {
            using (var uow = new UnitOfWork())
            {
                var categoryViewList = uow.CategoryRepository.GetAll();
                var categoryModel = categoryViewList.Select(b => new CategoryModel
                {
                    CategoryName = b.CategoryName,
                    Id = b.Id
                }).ToList();

                ViewBag.category = categoryModel;
            }
            return PartialView();
        }
分享到:

发表评论

评论列表