Asp.Net Mvc项目初始化说明
文件夹说明:
App_Start 项目的启动配置
Content css以及图片资源存放位置
Controllers、Models、View控制器、模型、视图存放位置
Scripts js以及js插件存放位置
favicon.ico 网站图标
Global.asax 应用程序启动、停止等配置
packages.config nuget引用配置
Startup.cs 启动项配置
Web.config 网站基本配置
Global.asax的Application_Start应用启动时配置:
AreaRegistration.RegisterAllAreas
在MVC中,一共有三个核心部分,Model,Controller,View,这三个部分存在于一个区域中.
在实际项目开发中,一个项目具有多个模块,而为了区分每个模块,将每个模块划分区域,
AreaRegistration.RegisterAllAreas,就是在这个应用中注册了所有区域。
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
GlobalFilters.Filters是过滤器的容器,FilterConfig.RegisterGlobalFilters为过滤器的容器添加了过滤项。
RegisterGlobalFilters实现了添加的操作。GlobalFilters.Filters添加的内容,主要有包含FilterAttribute的派生类。
开发者通过自定义FilterAttribute的派生类,来进行过滤操作。
RouteConfig.RegisterRoutes(RouteTable.Routes);
RouteTable.Routes是路由的容器,RouteConfig.RegisterRoutes为路由容器添加设置的路由项。
RegisterRoutes实现了添加的操作。RouteTable.Routes添加的内容,主要有设置路由忽略项,映射项以及路径、命名空间、自定义路由等
开发者通过自定义RouteBase的派生类来设置自定义路由。设置路由和映射,都属于添加的一种路由。
BundleConfig.RegisterBundles(BundleTable.Bundles);
BundleTable.Bundles是压缩的容器,用于压缩js和css,BundleConfig.RegisterBundles为容器添加设置的项。
RegisterBundles实现了添加的操作,BundleTable.Bundles添加的内容主要是ScriptBundle和StyleBundle。它们都是Bundle的派生类
主要是为了初始化View的内容。
Startup.cs启动项
[assembly: OwinStartupAttribute(typeof(BaoXing.Study.Mvc.Startup))] // 标识该命名空间下的启动项
ConfigureAuth(IAppBuilder app)启动项设置
Models验证特性
Model的验证特性:
Required 非空验证
StringLength 限制字符串长度
Range 限制取值范围
RegularExpression 正则表达式匹配
Compare 值比较
EmailAddress 指定该属性必须是邮箱
Model与View强类型特性:
DataType 指定了数据的类型,是否密码字符
Display 设置了View显示的名称
压缩:
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));
version指定了jquery所有版本
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.validate*"));
jquery.validate*指定了所有包含jquery.validate为前缀的js
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
"~/Scripts/bootstrap.js",
"~/Scripts/respond.js"));
压缩了css
过滤器:
public class FilterConfig
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute()); //添加过滤项
}
}
路由:
// 路由忽略项
routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
// defaults 默认访问的控制器
// url 路由规则
Asp.Net Mvc项目初始化说明的更多相关文章
- AngularJS2 + ASP.NET MVC项目
环境:VS2015, NodeJS:v 6.5, npm: v3.10, AngularJs 2 通过将ASP.NET MVC项目与Angualr 2官网上的quick start整合的过程中遇到些问 ...
- 远程调试 ASP.NET MVC 项目
Visual Studio 支持从一台计算机到另一台设备的远程调试.进行远程调试时,主机可以是任何支持 Visual Studio 的平台.远程设备可以是 x86.x64 或 ARM 平台. 本文将指 ...
- 习题-任务2初始ASP.NET MVC项目开发
一.选择题 1.在ASP.NET MVC项目的RouteConfig.cs文件中,( )方法注册了默认的路由配置. A.RegisterMap B.RegisterRoutes C. ...
- Asp.net mvc项目架构分享系列之架构概览
Asp.net mvc项目架构分享系列之架构概览 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构 ...
- 1.2 认识ASP.NET MVC项目结构
1.开发环境 操作系统:xp.vista.windows 7.windows 8.windows server 2003|2008|2008R2|2012: 集成开发环境IDE: Vsiual Stu ...
- 2.2 利用项目模板创建ASP.NET MVC项目
1.启动VS2012,点击“文件|新建|项目”. 2.在新建项目的窗口中,选择ASP.NET MVC 4应用程序. 3.在新ASP.NET MVC 4项目窗口中的“选择模板”列表中选择“基本”模板,在 ...
- 在 ASP.NET MVC 项目中使用 WebForm、 HTML
原文地址:http://www.cnblogs.com/snowdream/archive/2009/04/17/winforms-in-mvc.html ASP.NET MVC和WebForm各有各 ...
- ASP.NET MVC 项目分离
ASP.NET MVC 项目分离 说明: ZRT.Web 是前台网站,目录[D:\ZRT.Web\] ZRT.Admin 是后台管理,目录[D:\ZRT.Web\Applications\Admin\ ...
- ASP.NET MVC项目
ASP.NET MVC项目里创建一个aspx视图 先从控制器里添加视图 视图引擎选"ASPX(C#)",使用布局或模板页不要选. 在Views\EAV目录里,生成的aspx是个单独 ...
随机推荐
- Oracle 同步
原文出处:http://www.cnblogs.com/zeromyth/archive/2009/08/19/1549661.html Oracle备份功能包括: 高级复制(Advanced Rep ...
- Qt Ubuntu 编译出错-1: error: 找不到 -lGL
安装好,编译界面程序出错“-1: error: 找不到 -lGL” 在终端运行如下命令(安装Qt5.8.0) sudo apt-get install libqt5-dev sudo apt-get ...
- MySQL数据库排序选择的作用和该如何选择编码格式
前言:在创建数据库的时候,会有这样一个选项->排序规则,平时在创建数据库的时候并没有注意,只是选择了默认,也没感觉有什么问题,今天看到这个突然好奇起来,所以看了一些资料做了以下的一些总结,若有错 ...
- 造轮子和用轮子:快速入门JavaScript模块化
造轮子和用轮子:快速入门JavaScript模块化 前言 都说“不重复造轮子”,就像iPhone——它除了打电话还可以播放音乐——但是工程师不用从零开始做一个音乐播放功能,也许只要在iPhone的系统 ...
- 并发之volatile关键字
volatile关键字 volatile关键字是什么 在上一章我们讲到了并发的的三个概念,那么今天在讲解下在java中可以保证可见性和有序性的一个关键字. volatile关键字 :当变量的值被该关键 ...
- 使用caffe模型测试图片(python接口)
1.加载相关模块 1.1 加载numpy import numpy as np 1.2 加载caffe 有两种方法. 方法一(静态导入): 找到当前环境使用的python的site-packages目 ...
- *****hibernate主键生成
一.主键主键是关系数据库中的一个基本概念,它用来保证记录的唯一性主键都是没有业务含义的,所以开发 者不会.也不需要,显示地设置实体对象的主键值.但是对于数据库来说,主键是必须的 Hibernate内置 ...
- VS-常用的快捷键-总结
1: 快速添加引用 === Shift+Alt+F10; 也可用于实现抽象类 2: 直接添加属性 ===prop+Tab+Tab; 3: 根据字段添加属性 === Ctrl +r+e; 4: 格式化代 ...
- 获取更新元素文本text()
text() 方法,获取元素文本,也可以设置元素的文本值.相 <!DOCTYPE html> <html lang="en"> <head> & ...
- mysql undo 和redo 被误删除的恢复操作(一致性)
今天在群里看到有人说不熟悉innodb把ibdata(数据文件)和ib_logfile(事务日志)文件误删除了.不知道怎么解决.当时我也不知道怎么办.后来查阅相关资料.终找到解决方法.其实恢复也挺简单 ...