*创建AspMVC项目

(1)会自动创建App_Data文件夹,是用户不能访问和下载的。一般用户能访问那些文件夹,可以在IIS中配置。

(2)App_Start文件夹,用于放置与程序有关的配置文件。

(3)Controller文件夹,专门用于放置给View提供数据的业务类,不再是作为前台aspx的父类。与weform的唯一改进。

(4)Models文件夹,用于放置仅与Controller中类用使用的工具类

(5)Views文件夹,内含有web.Config(可删)

*添加一个页面------最简单的控制器

(1)在Controllers右键,添加控制器,控制器类名都要以Controller来结尾,编译时才能识别为控制器,如HomeController

(2)控制器继承自Controller基类,那么就会自动生成:

public ActionResult Index()

{

  return View();

}

(3) 在Index方法处,右键,添加视图,将发生:

在Views文件夹下,就有Home的文件夹,而且产生Index.aspx页面。

至此,有如下结论:

一个Controllers下,可以对应多个Action,一个Action能对应一个aspx页面。

如上述叫Home的Controller下,有叫Index的Action,同时,对应着Views文件夹下的Home文件夹,对应着Index.aspx页面。

*Controller规则:

  1.以Controller结尾;

  2.必须为非静态字段;

  3.实现IController接口;

  4.控制器下的所有方法都称为Action.

  5.Views文件夹下不能随便放html之类,不然访问不到。

*Views下,有Shared文件夹,如果没有,可以自己添加,作用:控制器首先会到自己的文件夹下找到对应的视图,如果没有找到,就会到Shared中找

*MVC模型:用户---->请求http://localhost:8081/AControler/Action----->Model/BLL/DAL------>DB------>.....返回到Action---->产生View------>用户

*在webFrom中,请求一个Asp页面是http://localhost:8081/a.aspx

而在MVC中,则是http://localhost:8081/Controller/Action

*Action的三个职责:1.处理用户的请求:Request,Respone;2.调用业务逻辑;3.把数据传递给View进行展示。

*Asp Mvc的URL地址写法是有很多讲究的,如上述,如果要修改URL地址写法的规则,可以在Clobal.asax中修改,如下:

在Application_Start()方法中,有三个方法的静态类都放在Application_Start文件夹中,其中,可以在此设置默认的访问页,在RouteConfig类中,

可以RegisterRoutes中,设置请求地址规则,例如:url:"{controller}/{action}.html",那么就了在浏览器中输入URL的地址时,要加上.html才行。

学习笔记23_AspMVC项目的更多相关文章

  1. thinkphp学习笔记3—项目编译和调试模式

    原文:thinkphp学习笔记3-项目编译和调试模式 1.项目编译 在章节2.4项目编译中作者讲到使用thinkphp的项目在第一次运行的时候会吧核心需要加载的文件去掉空白和注释合并到一个文件中编译并 ...

  2. ThinkPHP 学习笔记 ( 一 ) 项目部署:应用部署方式与模块分组部署方式

    /** * ThinkPHP version 3.1.3 */ ThinkPHP ( 官方网站:http://www.thinkphp.cn/ ) 目前最新版本是 3.2.2,它要求 PHP 的版本高 ...

  3. 【音乐App】—— Vue-music 项目学习笔记:项目准备

    前言: 学习慕课网Vue高级实战课程后,在实践中总结一些这个项目带给自己的收获,希望可以再次巩固关于Vue开发的知识.这一篇主要梳理:项目概况.项目准备.页面骨架搭建.项目github地址:https ...

  4. WeX5学习笔记-建立项目且从SVN获取版本

    UI2项目(app项目)建立步骤: 1.从网上获得WeX5_V3.1.1.zip 文件,在某盘根目录下,创建一个文件,起名尽量短小,因开发包里的文件目录层次很深,有时会报路径长度超出范围的提示,如创建 ...

  5. Maven学习笔记-02-Maven项目打包配置与测试

    一 Maven项目打包配置 1 为整个项目统一指定字符集 <properties> <project.build.sourceEncoding>UTF-</project ...

  6. Spring Boot学习笔记:项目开发中规范总结

    Spring Boot在企业开发中使用的很广泛,不同的企业有不同的开发规范和标准.但是有些标准都是一致的. 项目包结构 以下是一个项目常见的包结构 以上是一个项目的基本目录结构,不同的项目结构会有差异 ...

  7. maven学习笔记--maven项目创建

    使用Maven命令和Eclipse的Maven插件,创建Maven项目 (1)maven命令生成项目         新建一个文件目录,dos进入该目录并执行下面命令: mvn archetype:c ...

  8. ionic学习笔记—创建项目

    环境搭建: 安装node.js  --> npm或cnpm   -->  安装jdk  -->  安装AndroidSDK  -->  安装cordova  -->  安 ...

  9. java web(学习笔记)项目路径问题

    最近刚接触java web特别是是关于项目路径这一块很晕,就把自己遇到的一些疑惑和理解写下来. 首先贴上路径,这里用的是eclipse. 其中我们要注意看WebContent目录,这是web程序的根目 ...

随机推荐

  1. PHP5.5 mysqli如何连接MySQL数据库和读取数据

    在学习 1. 开启PHP的API支持 (1)首先修改您的php.ini的配置文件.查找下面的语句:;extension=php_mysqli.dll将其修改为:extension=php_mysqli ...

  2. js 验证数据类型的4中方法

    1.typeof  可以检验基本数据类型 但是引用数据类型(复杂数据类型)无用: 总结 : typeof  无法识别引用数据类型  包括 bull; 2.instanceof是一个二元运算符,左操作数 ...

  3. 从无到有,构建GIS + BIM大厦

    声明:本文是一个系列原创(作者在GIS+BIM行业已有从业15年有余,还是个行业的小学生,文章内容不免有错误或者不当之处,敬请理解),旨在通过这个系列打造一个高性能,高可扩展的GIS+BIM框架,抛砖 ...

  4. GoLang 获取两个时间相差多少小时

    package main import ( "fmt" "time" ) func main() { fmt.Println(getHourDiffer(&qu ...

  5. Python开发专属壁纸下载与轮换程序

    本人对于壁纸一直偏佛系,不爱特意去找一堆壁纸.因此用Python简单地搞了一个自动下载壁纸,定时随机轮换的功能来自娱自乐,顺便分享给大家. 原文链接:https://www.codernice.top ...

  6. MySQL学习(三)MySQL锁与事务

    本章我们着重讨论MySQL锁机制的特点,常见的锁问题,以及解决MySQL锁问题的一些方法或建议. 一.MySQL锁概述 相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支 ...

  7. 调用对象 “ha-datastoresystem”的“HostDatastoreSystem.QueryVmfsDatastoreCreateOptions” 失败。

    VMware vSphere Client上显示:在 ESXi“10.10.10.3”上调用对象 “ha-datastoresystem”的“HostDatastoreSystem.QueryVmfs ...

  8. django自带cache结合redis创建永久缓存

    0916自我总结 django自带cache结合redis创建永久缓存 1.redis库 1.安装redis与可视化操作工具 1.安装redis https://www.runoob.com/redi ...

  9. 简单使用OpenSSL生成密钥

    一.生成自签名证书 1.1.创建root CA私钥 openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 ...

  10. Spring Boot 入门(七):集成 swagger2

    本片文章是基于前一篇写的,<Spring Boot 入门(六):集成 treetable 和 zTree 实现树形图>,本篇主要介绍了spring boot集成swagger2.关于swa ...