【ASP.NET MVC 学习笔记】- 13 Child Action

本文参考:http://www.cnblogs.com/willick/p/3410855.html

1、Child action 和 Patial view 类似,也是在应用程序的不同地方可以重复利用相同的子内容。不同的是,它是通过调用 controller 中的 action 方法来呈现子内容的,并且一般包含了业务的处理。任何 action 都可以作为子 action 。示例:

//1、ChildActionOnly 特性保证了该 action 只能作为子action被调用(不是必须的)
[ChildActionOnly]
public ActionResult Time()
{
    return PartialView(DateTime.Now);
}

//2、View Time.cshtml
@model DateTime

<p>The time is: @Model.ToShortTimeString()</p> 

//3、在 List.cshtml 视图中添加如下代码来调用 Time action 方法 :
@Html.Action("Time")

通过 @Html.Action 方法来调用了 Time action 方法来呈现子内容。在这个方法中我们只传了一个action名称参数,MVC将根据当前View所在Controller去查找这个action。如果是调用其它 controller 中的 action 方法,则需要在第二个参数中指定 controller 的名称,如下:

@Html.Action("Time", "MyController")

该方法也可以给 action 方法的参数传值,如对于下面带有参数的 action:

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

@Html.Action("Time", new { time = DateTime.Now })
时间: 2024-08-25 16:37:06

【ASP.NET MVC 学习笔记】- 13 Child Action的相关文章

Asp.Net Mvc 学习笔记总结(自学第一天)

今天是第一天学习,主要总结了下面两个问题.由于是自学,总结的可能会有纰漏希望大家积极指正(微笑). 1.什么是Mvc?为什么要用Mvc? 2.如何使用Mvc快速实现入门级别的开发? 这里先说一下什么是Mvc:首先Mvc是一种架构模式:第二Mvc不等同于三层:第三Asp.net Mvc是延用了Mvc思想做出来的一款基于三层中的UI层的一款产品:那么Mvc架构模式是什么意思呢?当然这个架构模式20世纪80年代就已经提出来了.当时的提出的时候并没有标准的输入输出设备,只是为了单纯的区分开来输入.输出和

ASP.NET MVC 学习笔记(1)

从头开始系统地学习ASP.NET MVC

【转】ASP.NET MVC学习笔记-Controller的ActionResult

1. 返回ViewResult public ActionResult Index()   {       ViewData["Message"] = "Welcome to asp.net MVC!";       return View();   }  public ActionResult Index(){    ViewData["Message"] = "Welcome to ASP.NET MVC!";    re

ASP.NET MVC 学习笔记-2.Controller

MVC中,Controller用来响应对ASP.NET MVC网站的请求,每个浏览器请求都会被映射到特定的Controller实例上,Controller针对请求可能会进行以下处理:向浏览器返回特定的视图或者对请求进行重定向到别的Controller. Controller实质是一个类,都派生于Controller(System.Web.Mvc.Controller基类). Controller上公共的方法称为ControllerAction,ControllerAction不能重载且不能为静态

ASP.NET MVC 学习笔记-2.Razor语法

1.         表达式 表达式必须跟在“@”符号之后, 2.         代码块 代码块必须位于“@{}”中,并且每行代码必须以“:”结尾.代码块中定义的变量可能会被同一个域中的其他块使用.比如,定义在视图顶部的变量可以被同一视图中的代码块和代码段访问. 3.         布局 Razor通过layouts保持网页外观布局的一致性.布局模板包含基本的标签,并可以指定渲染视图内容的位置.比如 基本布局文件(_Layout.cshtml) <!DOCTYPE Html> <ht

【ASP.NET MVC 学习笔记】- 10 Controller和Action(1)

本文参考:http://www.cnblogs.com/willick/p/3331521.html 1.继承IController接口,示例代码将当前请求的Controller和Action打印到浏览器: public class BasicController : IController { public void Execute(RequestContext requestContext) { string controller = (string)requestContext.Route

【ASP.NET MVC 学习笔记】- 14 HtmlHlper的扩展方法

本文参考:http://www.cnblogs.com/willick/p/3428413.html 1.在 MVC 中用于生成 Html 元素的辅助类是 System.Web.Mvc 命名空间下的 HtmlHelper,习惯上我们把 HtmlHelper 中的(扩展)方法叫 HtmlHelper Method,简称为Helper Method.它的作用是把生成 Html代码的任务交给 MVC,以便 MVC 能完成很多自动处理的工作.我们在 View 中使用的 Html.ActionLink.H

【ASP.NET MVC 学习笔记】- 04 依赖注入(DI)

本文参考:http://www.cnblogs.com/willick/p/3223042.html 1.在一个类内部,不通过创建对象的实例而能够获得某个实现了公开接口的对象的引用.这种"需要",就称为依赖注入(Dependency Injection). 2.依赖注入和和所谓的控制反转(Inversion of Control )是一个意思. 3.依赖注入是通过接口实现松耦合的设计模式,是解耦的重要手段. 4.依赖注入分为两步:移除对组件的依赖:通过类的构造器(或setter访问器)

【ASP.NET MVC 学习笔记】- 05 依赖注入工具Ninject

本文参考:http://www.cnblogs.com/willick/p/3223042.html 1.Ninject是一款轻量级的DI工具,可通过VS的插件NuGet将其引用到项目中. 2.使用Ninject的步骤: 创建一个Ninject的内核对象 //创建Ninject内核实例 IKernel ninjectKernel = new StandardKernel(); 把公开接口绑定到一个实现了该接口的类上 //绑定接口到实现了该接口的类.这种绑定告诉Ninject,当接收到一个请求IV