• 你的第一个mvc程序


      本章主要让读者对mvc有个认识,以便吸引读者能够感受到mvc架构的好处。主要的知识点:M/V/C各个部分的都有,但是都是粗略的提到,同时最后还介绍了mvc中的一个发邮件静态类WebMail。

      1、关于View的返回值:我们可以返回字符串和ViewResult对象以外的其他操作方法的结果。例如,如果我们返回RedirectResult,我们会导致浏览器重定向到另一个URL。如果我们 返回HttpUnauthorizedResult,我们强制用户登录。这些对象统称为action的结果,他们都来自ActionResult类。(C层)

      2、ViewBag是一个动态对象,您可以指定任意属性,随后将使这些值可在任何视图中呈现。(使用方法是:ViewBag.Geeting=="")。(C层和V层)

      3、关于HttpGet和HttpPost,一般当用户第一次请求一个控制器中的方法(Home/RsvpForm),也就是要从(Home/Index)页面转到RsvpForm页面时,使用的标签是HttpGet。当自身提交model时,通常是验证model是否符合要求,如果符合要求转到另外一个页面,如果不符合,通过自身的model保持原有的数据,此时用HttpPost。(C层、V层、M层)

      4、view保持数据的原理是使用model 的数据绑定。在添加View层,使用的是model的强类型,model中的各个字段去对应View的表单,这样也使提交数据时,表单的数据和model相匹配。(C层、M层)

      5、邮件发送。

      直接上码了:

    View Code
            @{
                try {
                    WebMail.SmtpServer = "smtp.qq.com";
                    WebMail.SmtpPort = 25;
                    WebMail.EnableSsl = false;
                    //下面的用户名和密码与from是一致的,通常是网站的邮箱
                    WebMail.UserName = "92437410";
                    WebMail.Password = "*******";
                    WebMail.From = "92437410@QQ.com";
    
                    //发送到490204371这个邮箱,这个应该是主办人的邮箱
                    WebMail.Send("49020431@qq.com", "RSVP Notification",
                    Model.Name + " is " + ((Model.WillAttend ?? false) ? "" : "not")
                    + "attending");
                } 
                catch (Exception ex) {
                    
                    @:<b>Sorry - we couldn't send the email to confirm your RSVP.</b>
                }
            }

    本章源码

    同时学到了他们写书的一个方式:那就是先给把给你体验一把,让你感觉很爽,然后再逐渐的切入整题,这样你很容易的去接受一个新事物。

  • 相关阅读:
    [Flux] Component / Views
    [Flux] Stores
    [WebStrom] Change default cmd to Cygwin
    [AngularJS] ng-if vs ng-show
    [ES6] Array.find()
    [ES6] Array.findIndex()
    [Javascript] Object.assign()
    [Javascript] Intro to the Web Audio API
    [Falcor] Indroduce to Model
    [Farcol] Introduce
  • 原文地址:https://www.cnblogs.com/lzhp/p/2874120.html
Copyright © 2020-2023  润新知