zoukankan      html  css  js  c++  java
  • [MSDN]ASP.NET MVC2(4)MVC中的View实现技巧(下)

    说明:本内容来自微软的webcast,讲师为苏鹏。视频没有书方便(想看哪页就看哪页),所以抄录要点和老师语录。

    内容介绍

    -          Htmlhelper

    -          ViewEngine 深入介绍

    预备知识

    -          安装VS2010

    -          了解ASP.NET

    -          了解设计模式基本概念

    Html.ActionLinkHtml.RouteLink

    -          这两个控件都根据用户输入生成导航信息

    -          ActionLink根据生成调用另外Controller的链接

    1

    clip_image002[10]

    2

    clip_image004[10]

    3

    clip_image006[10]

    Html.RouteLink部分

    1格式

    clip_image008[10]

    Html.BeginForm

    -          这一标记完全模拟<from>标记

    类似htmlformfrom包含多个input 表单,至少有一个input type=button

    方式1

    clip_image010[10]

    方式2推荐

    clip_image012[10]

    Html.Hidden

    -          用于生成隐藏文本

    clip_image014[10]

    Html.DropDownList Html.ListBox

    -          用于显示列表或选择值

    -          用于限制用户的输入

     clip_image016[10]

    clip_image018[10]

    clip_image020[10]

    强类型

    clip_image022[10]

    Html.PassWord

    - Password的工作方式和textbox一样,只是提交以后数据会自动清空

    clip_image024[18]

    Html.RadioButton

    -          生成一组选择值,并要求用户选择其一

    clip_image024[19]

    Html.PartialHtml.RenderPartial

    -          用于输出html片段

    <%Html. RenderPartial (“MyUserControl”)%>

    <%:Html.Partial(“MyUserControl”)%>

    两个方法功能一样

    RenderPartial相当于用Response.Write直接输出,在大型网站中,比Partial性能好。

    RenderPartialResponse.Write输出不用编译,所以不要冒号。

    Partial使用HtmlHelper类,所以需要冒号。

    可输出ascxaspx

    Partial有四个构造函数

    clip_image026[10]

    Html.ActionHtml.RenderAction

    -          用于实现指定Controller的指定Action 调用

    Html.Action部分

    clip_image028[10]

    上图:

    A Home controller 中,可以调用[ChildActionOnly]-Menu()

    B PartialView 新概念,是针对[ChildActionOnly]来做的,返回一小段数据。

    强类型:

    clip_image030[10]

    页面中调用Menu 的内容

    clip_image032[10]

     

    RenderAction部分

    可以加一般类型参数,还可以加特殊类型参数.-对象的实例.

    clip_image034[10]

    Action 接受参数-类的实例

    clip_image036[10]

    View 调用并显示

    clip_image038[10]

    Action 不会像C#那样,根据函数的名字和参数重载

    它需要加一个Attribute –[ActionName(“coolmenu”)]

    ActionNmae 可以 代替函数名 for 调用时。

    如下图:

    clip_image040[10]

    调用的时候Action 应该用”coolmenu”,不是menu

    clip_image042[10]

    Html.TextArea

    -          用于生成<textarea>标签

    不是richtextbox ,会对html 进行 encoding.

    clip_image044[10]

    Html.ValidationMessage

    -          显示ModelState 验证结果

    验证结果显示在view 层,一些商业规则在Model层,不再 view层是框架决定的。

    clip_image046[10]

    Html.ValidationSummary

    -          显示一组报错数据

    错误明细,条目。

    clip_image048[10]

    统共的错误,笼统地错误。

    clip_image050[10]

    HTML模板

    -          mvc2支持自定义模板

    View引擎介绍

    生命周期

    clip_image052[10]

     

    记载时候,有两件事最重要

    第一件事是它能玩得转,需要路由信息,要加入Router

    第二件事是它需要知道使用哪种引擎做呈现,要加入ViewEngine。默认情况下不写。

    clip_image054[10]

    先是清掉,然后注册。

    使用View

    -          IViewEngine 接口

    如何重写引擎-实现IViewEngine 接口

    clip_image056[10]

    PartialView – childcontrol配对,view- controller 配对。

    View

    -          IView接口

    一个函数输出的意思

    clip_image058[10]

    ViewContext属性

    clip_image060[10]

    Httpcontext:http上下文,response,request,server,session

    Controller:controller实例

    Routedata:返回router对象,让它知道从那个路由过来的。

    ViewData:从controller带回的数据对象

    Tempdata:保存一些从controller带回的数据对象,通常情况下它是一个cache过的对象。数据意义不大。

    View:生成html显示

    Clientvalidationenabled:是否在客户端验证,客户端不做就在Model做。

    Formcontext:对客户端form 判定的时候依赖这个对象。包含客户端form的一些信息。

    Formidgenerator:判定form的一些信息

    Ischildaction:判定返回结果是什么。True的话,就用portailviewrender false的话就用view来做。

    Parentactionviewcontext:用得少

    Write:输出基本的信息

    选择一个ViewEngine

    默认的WebFormViewEngine优势

    -          很像WebForm

    -          使用masterpage

    -          支持使用C#或者vb.net 写脚本

    -          使用System.Web.Ui.Page

    -          VS2010自带智能感知

    使用不同的ViewEngine

    clip_image062[10]

    Spark(一种View引擎)

    clip_image064[10]

    常见问题

    clip_image066[10]

    附:
    标题:粗体+斜体+黑色
    ppt文字:宋体+黑色
    作者语录:斜体+黑色/红色/蓝色
    我的心得:@开头

     

    人的一生应该这样度过:当他回首往事的时候,不会因为虚度年华而悔恨,也不会因为碌碌无为而羞愧。
  • 相关阅读:
    HDU1372,BFS象棋马走日
    看完一本小的算法书一个总结吧
    最小生成树Prim
    Junit单元测试的简单使用(主要是在spring框架下的项目)
    并查集
    最新最实用的公式技巧大汇总!
    这款Office密码破解工具,无坚不摧!
    有了它,友谊的船说不翻就不翻!
    Word公式装逼技巧,你绝对不会!
    为什么MathType窗口变灰色
  • 原文地址:https://www.cnblogs.com/htht66/p/2330499.html
Copyright © 2011-2022 走看看