简单了解了下MVC的基本开发步骤后,又对MVC的语法和模版详细看看了,小小总结下

  对mvc开发,首先是要对布局有个基本的认识。Razor引擎使页面元素更加清晰

  简单认识下

  • 可以加载css和js等文件,统一进行管理和设置

    1
    2
    3
    4
    <linkhref="@url.content("~ content="" site.css")"rel="stylesheet" type="text/css">
    <scriptsrc="@Url.Content("~/Scripts/jquery-1.7.1.min.js")"type="text/javascript"></script>
    <scriptsrc="@Url.Content("~/Scripts/jquery-1.7.js")"type="text/javascript"></script>
    <scriptsrc="@Url.Content("../../Scripts/Highcharts-3.0.1/js/highcharts.js")"type="text/javascript"></script></linkhref="@url.content("~>

    到了页面会自动找到相应的js

    在模板页中我们会定义一些全局性的CSS,JS等文件,而与具体页面相关的CSS和JS文件及代码,我们可以保留在@RenderSection("Head", false)中,它能够让页面通过@section Head{}的形式,将个性化的代码呈现,其中参数false表示,具体页面可以不去实现这个section Head块。

    模版页面定义

    1
    2
    3
          <div class="page">
      @RenderSection("Head", false);    <!-- 页面中可以没有Head节点-->
    </div><span style="font-family: SimSun;font-size:18px; "> </span>

    添加一个About.cshtml,

    然后就可以在About.cshtml中定义"Head"要呈现的内容

    1
    2
    3
    4
    5
    @section Head{
      <script>
           alert("Hello MVC3");
        </script>
     }
    • 分部视图

    可以是系统插件化 就是可以分离的东西绝对不要让他们在一起,因为只有每个功能模块都是单独的,我们才可以在其他位置重用它 分工合作现在是一个合作的时代,没有任何一个人可以单独完成规定的任务而不与别人合作,除非是牛人例外。分部视图可以带给我们开发不同模块中的分工合作。

    Html.partial和RenderPartial

    Html.partial和RenderPartial都是输出html片段,区别在于Partial是将视图内容直接生成一个字符串并返回(相当于有个转义的过程),RenderPartial方法是直接输出至当前 HttpContext(因为是直接输出,所以性能好)。因此它们在视图中的使用方式是不同的

    对比分析

    @Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction,@Html.ActionLink

    以上各个方法都是调用然后返回信息

    不同点

    1、带有Render的方法返回值是void,在方法内部进行输出;不带的返回值类型为MvcHtmlString,所以只能这样使用:

    1
    2
    @Html.Partial对应 @{Html.RenderPartial(....);}
    @Html.Action对应 @{Html.RenderAction(....);}

    2、Html.Partial可以直接提供用户控件名作为参数,

    而Html.Action需要有对应的Action,在Action内部返回PartailResult(即retunPartialView())。

    3、对于简单的没有任何逻辑的用户控件,推荐使用Html.Partial;对于需要设置一些Model的用户控件,推荐使用Html.Action。当然,有Model数据也是可以使用Html.Partial方法的,可以看方法的重载。

    Control认识

    control是一个抽象类,该类封装了不少的方法,返回类型很多是引用类型。所以我们在书写返回值的时候尽可能的去查看父类的方法

    如:发现父类的虚方法,那么我们就可以通过control返回以下这些类型。

    FileContentResultfile()ContentResultcontent()JesonResultjson()PartialViewResultpartialView()ReirectToresultResultRediretToaction()

    小结:

    MVC3以后的书写和语法大大简化的开发难度,同时在加入的一些分布视图上,起到了很好的开发效果。学习的难度并没有增大。本小结是对学习中简单的认识,还请多多指教。

最新文章

  1. Unreleased Resource(未释放资源)-Streams(流)
  2. ContentTools – 所见即所得(WYSIWYG)编辑器
  3. 原生andriod浏览器回退后dom(click)事件全体失效问题探究
  4. 初探数位DP-hdu2089
  5. gridview自定义排序
  6. 数据挖掘系列(5)使用mahout做海量数据关联规则挖掘
  7. 观察者模式学习--使用jdk的工具类简单实现
  8. hdu 4068 SanguoSHA
  9. MySql修改默认端口号,修改my.ini的端口号
  10. ASP.Net IE10 _doPostBack 未定义错误【转】
  11. 博客搬到CSDN了,以后就老实的呆在这儿吧~~
  12. MySQL XtraBackup自动恢复脚本
  13. 第33篇 js 常用简单的写法
  14. Unicode字符集,各个语言的区间
  15. SSM-MyBatis-02:Mybatis最基础的增删改查(查全部和查单独一个)
  16. vue-cli3.0 gui(一)
  17. Cygwin添加到鼠标右键
  18. java数据结构面试问题—快慢指针问题
  19. antd-mobile使用报错
  20. Android中关于使用空格对齐文字

热门文章

  1. Hibernate逍遥游记-第13章 映射实体关联关系-003单向多对多
  2. Servlet的response输出到页面时乱码的解决方法
  3. Java API —— 泛型
  4. ios开发之 MPMoviePlayerController 视频播放器
  5. Ubuntu链接ubuntu服务器
  6. ffmpeg 2.8.1 最新版本 VS2013 可调式动态库
  7. C#通过代码注册COM组件
  8. 关于引用mshtml的问题
  9. gulp自动刷新插件
  10. HDU 4607 Park Visit (DP最长链)