码迷,mamicode.com
首页 > 其他好文 > 详细

第四曲-完美的视图

时间:2015-06-04 22:25:09      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:

除了分段之外,我们还可以使用分布视图和子动作来生成动态内容。

分布视图:

我们可以在Views/Shared目录下右击ADD,添加视图,像往常一样命名为partial,但是要勾选那个分布视图(partial View)。创建好后,我们随便添加一点内容:

<div>
    This is a message for partial view.
    @Html.ActionLink("To Index","Index")
</div>

OK,完了之后我们再到主视图中添加:

@Html.Partial("partial")

在此启动应用程序,导航到这个视图便会发现多了一些东西了~

另外我们还可以使用强类型分布视图,具体用法如下:

@model IEnumerable<string>

<div>
    This is a message for partial view.
    @foreach(var item in Model){
    <p>@item</p>
    }
</div>

然后再到普通视图里面添加:

@Html.Partial("partial",new []{"apple","microsoft","google"})

 

子动作:

我们在控制器中添加如下方法

[ChildActionOnly]
        public ActionResult Child()
        {
            return PartialView(DateTime.Now);
        }

这里我们使用了注解属性。表示他是一个子动作。然后右击添加视图,并写下这行代码:

@model DateTime

@{
    ViewBag.Title = "Test";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

The Time is @Model.ToShortDateString()

ok,接下来就是调用子动作,很简单,又是一行代码:

@Html.Action("Child");

ok,接下来又会动态渲染了~如果我们想传递给子动作一些数据,只需要添加第二个数据:

@Html.Action("Child",new {time = DateTime.Now});

再到动作方法中接收即可:

[ChildActionOnly]
        public ActionResult Child(DateTime time)
        {
            return PartialView(time);
        }

see you~

技术分享

第四曲-完美的视图

标签:

原文地址:http://www.cnblogs.com/blackerXHunter/p/4553105.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!