MVC5入门学习第一天

第一步:创建第一个MVC程序

  1、初识ViewResult

  当从一个动作方法返回一个ViewResult对象时,便是在指示MVC去渲染一个视图。调用不带参数的View方法,便可以创建这个ViewResult对象。这是在告诉MVC,去渲染该动作的默认视图。

 

public ViewResult RsvpForm()
{
     return View();
}

 

  2、初识ViewBag(视图包)

  ViewBag对象是将数据从控制器传递给视图的一种方式,是Controller基类的一个成员,它是一种动态对象,可以给它赋任意属性,使这些属性的值在随后渲染的视图中是可用的。

 

     public ViewResult Index()
        {
            int hour = DateTime.Now.Hour;
            ViewBag.Greeting = hour < 12 ? "Good Morning" : "Good Afternoon";
            return View();
        }

 

  

   <div> 
        @ViewBag.Greeting World(from the view)
    </div>

 

 

  Web页面从服务器到浏览器的整个呈现过程实际上分为三步:第一步是通过视图引擎对视图文件进行解释,将视图文件当中的代码转换成HTML标记,这一步叫做渲染;第二步是将渲染后的HTML标记传递给客户端浏览器,这一步是页面的传递;第三步是浏览器接收到HTML后对其进行处理并呈现为Web页面,这一步才叫呈现

  3、HTML辅助器方法

   @Html.ActionLink("RSVP Now", "RsvpForm")是HTML的辅助器方法,它带有两个参数,第一个是该链接的显示文本,第二个是执行的动作。

  @Html.TextBoxFor(x => x.Name, new { @class = "formcontrol" })会生成一个input元素的HTML,将该元素的type类型设置成“text”,id和那么标签属性设置为“Name”。替代lambda表达式的另一种方法是@Html.TextBoxFor("Name")

   4、设置启动URL

  在项目中点开属性,选中web,特定页,不需要赋值。

  

第二步:建立数据模型

  1、数据验证

  通过System.ComponentModel.DataAnnotations;命名空间中注解属性进行定义的,验证运用于域模型,而不是用户界面。这意味这可以在一个地方验证条件,而在运用模型类的任何地方都生效。

 

  public class GuestResponse
    {
        [Required(ErrorMessage ="Please enter your name")]
        public string Name { get; set; }
        [Required(ErrorMessage = "Please enter your email address")]
        [RegularExpression(".+\\@.+\\..+",ErrorMessage ="Please enter a valid email address")]
        public string Email { get; set; }
        [Required(ErrorMessage = "Please enter your phone number")]
        public string Phone { get; set; }
        [Required(ErrorMessage = "Please specify whether you 'll attend")]
        public bool? WillAttend { get; set; }

    }

 

  其中public bool? WillAttend { get; set; }代表true或false或null;

  可以在控制器类中使用ModelState.IsValid属性来检查是否有验证问题。

    public ViewResult RsvpForm(GuestResponse guestResponse)
        {
            if (ModelState.IsValid)
            {
                return View("Thanks", guestResponse);
            } else
            {
                return View();
            }
        }

  在提示验证有错误的情况下在视图中通过 @Html.ValidationSummary()辅助器方法给用户以提醒

 

第三步:建立强类型视图

  1、强类型视图意在渲染一个特定的域类型,而且如果指定了想使用的类型,MVC将能够创建便于使用这个类型的方法。

 

@model PartyInvites.Models.GuestResponse

@{
    Layout = null;
}

 

  2、模型绑定。return View("Thanks", guestResponse);第一个参数是一个模型类型,这个View方法告诉MVC查找一个“Thanks”的视图,并对该视图传递GuestResponse对象,在视图中通过’@Model.属性名‘即可获得

最后:通过工具中nuget控制台命令“Install-Package bootstrap -Version 3.0.0”加载bootstrap前端库。命令可在https://www.nuget.org/packages/bootstrap/3.0.0获得。

 

posted @ 2018-01-18 16:03  大大大大笨蛋  阅读(129)  评论(0编辑  收藏  举报