zoukankan      html  css  js  c++  java
  • ASP.net MVC入门及Razor语法

    一、MVC入门:

         1、MVC简介

         约定大于配置

         2、MVC访问流程

                               

                      csthml模板(razor模板)就是简化HTML的拼接的模板,最终还是生成html给浏览器显示,不能直接访问cshtml文件。

    二、Razor语法:

                 1、 @启动的区域为标准的C#代码,其他部分是普通的html代码

                 2、 用法:

                       a) @{string a="abc";}  @a @{代码块}   有标签就是html代码;

                          总结:@就是C#,<a></a> 就是html ;

                                      如果想让被识别成html的当成C#,那就用@()   

                                      如果想让被识别成C#的当成html 就用<span></span> ,如果不想生成额外的标签,就用<text></text>

                                      属性的值如果以“~/”开头会进行虚拟路径处理

                                      属性值如果是bool类型,如果是false 就不输出这个属性,如果是true就输出“属性名=属性名”   <input type="checkbox"  checked="@b1" >

    三、 var 匿名类型

                /*
                 class Myp
                 {
                     public int Age { get; set; }
                     public string Name { get; set; }
                  }
                     Myp p = new Myp();
                     p.Name = "chen";
                     p.Age = 12;
                 */
    
                var p = new { Name = "chen", Age = 12 };

                匿名类型的属性是只读的,匿名类型是internal 类型,无法跨程序集

    四、Controller 给view传递数据的方式:

        1、 ViewData :   键值对从传递数据      

            public ActionResult Index()
            {
              
                ViewData["name"] = "chen";  //键值对传递
                ViewData["age"]=12;
                return View();
            }       
        <body>
            <p>
              <!--C#方法接收-->
              @ViewData["name"]  <br />
              @ViewData["age"]   <br />
            </p>
    
        </body>

         2.  ViewBag:  ViewBag是dynamic类型的参数,是对ViewData一个动态类型的封装,用起来更方便和ViewData共同操作一个数据。

            public ActionResult Index()
            {
               
                ViewBag.name = "chen";
                ViewBag.age = 12;
                
                return View();
            }
        <p>
            <!--C#方法接收-->
            @ViewBag.name  <br />
            @ViewBag.age   <br />
        </p>

          3.   Model 

                 可以在Controller 中通过 return View(model) 赋值 ,然后在cshtml中通过Model属性来访问这个对象;

                 强类型视图:如果在cshtml中通过“@model”类型(注意model小写)指定类型,则cshtml中的Model就是指定的强类型,

                 弱类型视图: 如果没有指定“@model”类型,则cshtml中的Model就是dynamic

                 数据传递建议用 Model传递,并且建议用强类型

  • 相关阅读:
    POJ 2175 Evacuation Plan 费用流 负圈定理
    POJ 2983 Is the Information Reliable? 差分约束
    codeforces 420B Online Meeting
    POJ 3181 Dollar Dayz DP
    POJ Ant Counting DP
    POJ 1742 Coins DP 01背包
    中国儒学史
    产品思维30讲
    Java多线程编程核心技术
    编写高质量代码:改善Java程序的151个建议
  • 原文地址:https://www.cnblogs.com/fuyouchen/p/9366473.html
Copyright © 2011-2022 走看看