• 2.第一个MVC程序


    1)开发准备工作
    下载Microsoft Visual Studio 2015安装(下简称vs2015),网上下载和安装流程都很多。我是选择全部组建和功能安装。

    2)新建项目
    打开vs2015,在左面开始下面点击新建项目。

    选择 已安装-Visual C#-Web 点击窗口内ASP.NET Web应用程序,确定。

    之后我们看到许多选择,学习MVC,先点击MVC,下方多选框固定选择MVC,右面更改无身份验证。确定。

    项目架构和首页已被生成好,这是一个简单的微软MVC例子。

    直接点击打开对应浏览器运行此web项目看看。

    可以看到一些介绍。但url路径是显示http://localhost:2755/,这只是vs2015占用了一个端口进行调试演示。那么url呢?实际上url被“路游”(Route)指定了一个默认值为当前首页,没有显示出来。

     

    2)初步分析文件夹和里面的东西

    其中:Controllers件夹中的控制器必须以Controller结尾,比如上图的Home控制器,这是一个约定。
    View文件夹下有Home文件夹,这是对应HomeController控制器里要使用的视图,创建视图时会自动创建。

    3)执行Global.aspx
    Global.aspx文件会首先执行

    在第17行代码中它执行了App_Start文件夹下的RouteConfig.cs类RegisterRoutes方法

    下面的代码就是创建了一条名称为“Default”的默认路游器,url能匹对的地址规范是"controller/action/id",defaults默认参数是controller = "Home", action = "Index", id = UrlParameter.Optional(可选)。因为这条路游,我们直接点击运行时,能不输入url运行网站程序。但其实上它访问的是 Home/Index/ 这条url
    routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
    );
    在地址栏输入 (调试用端口)/home/index/ 发现页面是一样的

    3)初窥控制器
    根据路游的代码看出 url: "{controller}/{action}/{id}" 对应的就是Home Index 其实就是访问Controller文件夹下的HomeController控制器下的一个叫做“index”的action(方法)

    Index好像是一个特殊的C#方法,返回ActionResult类型。
    在Index代码内部右键,转到视图。(如果没有视图,可以点击添加视图)

    跳转到了View文件夹下的Home文件夹下的Index.cshtml文件里。Home文件夹就是对应Homecontroller,添加视图时是会默认以action方法名称去命名视图名的。

     

    验证一下,在Controllers文件夹上右键添加,控制器

    先来个空的

    控制器必须以Controller结尾,添加。

    添加后,我们照葫芦画瓢,弄了一个TextIndex Action方法

    试试转到视图?

    还是添加视图把,先把使用布局页勾勾去掉。因为我们现在还不知道布局页是什么。添加。

    ok,除了2-4行的代码。其余的就是普通的html哦。

    在div内加点标示

    Views文件夹下面也是自动创建了Text文件夹,和里面也有了对应Action方法名称TextIndex.cshtml文件。

    运行程序,把我们刚刚知道的url地址规范填上去。这次我们要访问新建的控制器方法Text/TextIndex/
    马上就看到效果了

    有过开发基础的同学已经想到。MVC执行过程 大致是:
    URL请求-路游寻找控制器-控制器取实体模型model数据-View展示。

  • 相关阅读:
    从scanf的学习接口设计
    特现C语言编程特点的小代码,itoa,数值转换成字符串
    So many good projects for studying C programming lanuage.
    重要算法代码
    选择一本C++教材
    4412 内核模块传参数
    4412 GPIO初始化
    4412 物理地址
    4412 杂项设备
    4412 Linux设备总线
  • 原文地址:https://www.cnblogs.com/FTAH/p/7020671.html
Copyright © 2020-2023  润新知