学习笔记23_AspMVC项目
*创建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项目的更多相关文章
- thinkphp学习笔记3—项目编译和调试模式
原文:thinkphp学习笔记3-项目编译和调试模式 1.项目编译 在章节2.4项目编译中作者讲到使用thinkphp的项目在第一次运行的时候会吧核心需要加载的文件去掉空白和注释合并到一个文件中编译并 ...
- ThinkPHP 学习笔记 ( 一 ) 项目部署:应用部署方式与模块分组部署方式
/** * ThinkPHP version 3.1.3 */ ThinkPHP ( 官方网站:http://www.thinkphp.cn/ ) 目前最新版本是 3.2.2,它要求 PHP 的版本高 ...
- 【音乐App】—— Vue-music 项目学习笔记:项目准备
前言: 学习慕课网Vue高级实战课程后,在实践中总结一些这个项目带给自己的收获,希望可以再次巩固关于Vue开发的知识.这一篇主要梳理:项目概况.项目准备.页面骨架搭建.项目github地址:https ...
- WeX5学习笔记-建立项目且从SVN获取版本
UI2项目(app项目)建立步骤: 1.从网上获得WeX5_V3.1.1.zip 文件,在某盘根目录下,创建一个文件,起名尽量短小,因开发包里的文件目录层次很深,有时会报路径长度超出范围的提示,如创建 ...
- Maven学习笔记-02-Maven项目打包配置与测试
一 Maven项目打包配置 1 为整个项目统一指定字符集 <properties> <project.build.sourceEncoding>UTF-</project ...
- Spring Boot学习笔记:项目开发中规范总结
Spring Boot在企业开发中使用的很广泛,不同的企业有不同的开发规范和标准.但是有些标准都是一致的. 项目包结构 以下是一个项目常见的包结构 以上是一个项目的基本目录结构,不同的项目结构会有差异 ...
- maven学习笔记--maven项目创建
使用Maven命令和Eclipse的Maven插件,创建Maven项目 (1)maven命令生成项目 新建一个文件目录,dos进入该目录并执行下面命令: mvn archetype:c ...
- ionic学习笔记—创建项目
环境搭建: 安装node.js --> npm或cnpm --> 安装jdk --> 安装AndroidSDK --> 安装cordova --> 安 ...
- java web(学习笔记)项目路径问题
最近刚接触java web特别是是关于项目路径这一块很晕,就把自己遇到的一些疑惑和理解写下来. 首先贴上路径,这里用的是eclipse. 其中我们要注意看WebContent目录,这是web程序的根目 ...
随机推荐
- Zookeeper工作过程详解
一.Zookeeper工作机制 分布式和集中式系统相比,有很多优势,比如更强的计算能力,存储能力,避免单点故障等问题.但是由于在分布式部署的方式遇到网络故障等问题的时候怎么保证各个节点数据的一致性和可 ...
- <<Java并发编程的艺术>>-阅读笔记和思维导图
最近在坚持每天阅读<>,不但做好笔记(MarkDown格式),还做好思维导图. 如果大家感兴趣,可以可以到码云上阅读笔记和到ProcessOn上阅读思维导图. 码云:https://git ...
- (八十三)c#Winform自定义控件-导航菜单(扩展)
前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kwwwvagaa/NetWinformControl 码云:ht ...
- JS的加减乘除高精度
//除法函数,用来得到精确的除法结果 //说明:javascript的除法结果会有误差,在两个浮点数相除的时候会比较明显.这个函数返回较为精确的除法结果. //调用:accDiv(arg1,arg2) ...
- .NET Core 3.0之深入源码理解ObjectPool(一)
写在前面 对象池是一种比较常用的提高系统性能的软件设计模式,它维护了一系列相关对象列表的容器对象,这些对象可以随时重复使用,对象池节省了频繁创建对象的开销. 它使用取用/归还的操作模式,并重复执行这些 ...
- opencv之膨胀与腐蚀
腐蚀和膨胀 Erosion/Dilation erosion/dilation,用白话说,就是让图像亮的区域收缩和扩张. 原理 我们定义一个卷积核矩阵.这个矩阵可以是任何形状的,但通常而言,是矩形或者 ...
- netty源码解解析(4.0)-24 ByteBuf基于内存池的内存管理
io.netty.buffer.PooledByteBuf<T>使用内存池中的一块内存作为自己的数据内存,这个块内存是PoolChunk<T>的一部分.PooledByteBu ...
- 在chrome浏览器安装各种前端,后台插件
如果想要在chrome安装插件,首先得先有应用chrome的商城,但是默认情况下是没有应用商店: 默认情况下下面这个界面是空白的,没有任何东西,第一步就先安装[谷歌访问助手] 安装步骤 第一步: 下载 ...
- 聊聊 Vue 中 axios 的封装
聊聊 Vue 中 axios 的封装 axios 是 Vue 官方推荐的一个 HTTP 库,用 axios 官方简介来介绍它,就是: Axios 是一个基于 promise 的 HTTP 库,可以用在 ...
- 代码审计-(Ear Music).任意文件下载漏洞
0x01 代码分析 后台地址:192.168.5.176/admin.php admin admin 安装后的界面 在后台发布了一首新歌后,前台点进去到一个“下载LRC歌词”功能点的时候发现是使用re ...