zoukankan      html  css  js  c++  java
  • MVC

    一。 Model

    1.1 在ASP.NET MVC 中 model 负责的是所有与 "数据“  相关的的任务。

      也可以把Model 看成是 ASP.NET  中三层模式的 BLL层 加 DAL层。

    1.2 model层中试用ORM信息反问技术 : LINQ to SQL ,Entity Framework,NHibernate, 等。

      何为 ORM 技术:对象关系映射。

      即:ORM是将结构化的关系型数据,映射到对象模型。如果以 Entity Framework 来说,就是视图将关系数据库的中数据转化成.net原生对象。

    二。 Controller

     2.1 ASP.NET MVC 中的 Controller.

      在 MVC 中所有的Controller都是默认继承自 System.Mvc.Controller

      Controller是一个类,类中有许多Method 也就是 Action 。负责处理浏览器来的所有要求

      也就是浏览器通过 实例化 Controller 类 查找对应的Action。来响应View。

       Controller /Action/id.

    2.2 Controller 必须为公开类别。

      Controller 名称必须以Controller 结尾。

     2.3 当Controller找不到对应Action会默认运行System.Mvc.Controller类别的 HandleUnknownActon 方法。

      会默认响应404找不到资源错误信息。

       在 MVC 中所有的Controller都是默认继承自 System.Mvc.Controller   

     System.Mvc.Controller类别中 ”HandleUnknownActon “ 方法被标注为 ‘virtual’ ,虚方法,这是可以被重写的。‘Override’.

     因此可以在Controller 中自定义找不到Action的方法。

         protected override void HandleUnknownActon(string strName)
            {
                Response.Redirect("http://www.google");
            }
    

    2.4 Controller  中的NoAction

     [NoAction]
     public ActionResult Index()
     {  
     }
    

     使得 Controller 中的公开方法 不发布到到web上 等同于private效果

    2.5 http限定

      httpGet, httpPost,httpDelte,HttpPut,HttpHead,HttpOptions,HttpPatch属性(Attributes)都是动作方法选定器的一份子。

          [HttpGet]
            public ActionResult Index()
            {  }
    

      上面标示只有http Get 请求时ActionInvoker 才会选定这个Action.

    2.6   Controller  中的 ActionResult 

       ActionResult 是Action运行后的回传。

    2.7 Controller  中的 ViewResult

      return View();

       检视 视图返回客户端。 可以选择指定页。

      return View(“AAA”);

    2.8 Controller  中的 PartialViewResult

      与ViewResult 类似。不同点在于,它不能指定页。

    2.8 Controller 中的 EmptyResult.

      不回传。

    2.9 Controller 中的ContentResult.

      return Content(str); 

      输出文字属性 html文本等。

    3.0  Controller 中的FileResult.

     3.1 JavaScriptResult.

      用来响应JavaScript程序代码给浏览器。

          public ActionResult JavaScript()
            {
                return JavaScript("alert('OK')");
            }
    

    3.2 JsonResult.

      返回Json格式。 

         public ActionResult Json()
            {
                return Json(new { id = 1, name = "will" });
            }
    

    3.3 RedirectReult

      重新导向到其他网址。

         public ActionResult Redirect()
            {
                return RedirectPermanent("Home/NewIndex");
            }
    

    3.4  RedirectToRute

      与RedirectReult类似。它会匹配路由。

    3.5 HttpStatusCodeResult,  HttpNotFoundResult,  HttpUnauthorizeResult.

    三 。 View

      View是负责将Controller 传来的数据转换成HTML 格式输出。

    4.1 Razor 。 区别于<%:DateTime.Now %> 

      Razor语法 @DateTime.Now

             @if(ViewBag!=null)
            {
                <span>启用</span>
            }
            else
            {
                <span>禁用</span>
            }    

    4.2 @helper 辅助方法。

     类似自定义函数。

    @helper ShowUnitPrice(int price)
      {
                
      }

    就可以在任何地方调用

    @ShowUnitPrice(model.price)

    4.3 @functions 函数

    4.4 @model 设置页面强类型数据模型

  • 相关阅读:
    PDF文件中的Form保存问题
    Understanding IP Fragmentation
    tcp ip guide IPsec IKE
    Windows安全事件日志中的事件编号与描述
    Cisco PIX fix up and Juniper firewall FTP ALG
    很好的IPSec介绍,详细解释了IKE协商的2个阶段的作用
    virtualbox 下运行Ubuntu 8.10的分辨率和guest additions的问题。
    Fixing the ‘Do you want to display nonsecure items’ message
    windows xp 开始菜单里面所有项目右键不起作用。
    HP backup and recovery manager
  • 原文地址:https://www.cnblogs.com/dragon-L/p/3742629.html
Copyright © 2011-2022 走看看