文件夹说明:

  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项目初始化说明的更多相关文章

  1. AngularJS2 + ASP.NET MVC项目

    环境:VS2015, NodeJS:v 6.5, npm: v3.10, AngularJs 2 通过将ASP.NET MVC项目与Angualr 2官网上的quick start整合的过程中遇到些问 ...

  2. 远程调试 ASP.NET MVC 项目

    Visual Studio 支持从一台计算机到另一台设备的远程调试.进行远程调试时,主机可以是任何支持 Visual Studio 的平台.远程设备可以是 x86.x64 或 ARM 平台. 本文将指 ...

  3. 习题-任务2初始ASP.NET MVC项目开发

    一.选择题 1.在ASP.NET MVC项目的RouteConfig.cs文件中,(    )方法注册了默认的路由配置. A.RegisterMap    B.RegisterRoutes    C. ...

  4. Asp.net mvc项目架构分享系列之架构概览

    Asp.net mvc项目架构分享系列之架构概览 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构 ...

  5. 1.2 认识ASP.NET MVC项目结构

    1.开发环境 操作系统:xp.vista.windows 7.windows 8.windows server 2003|2008|2008R2|2012: 集成开发环境IDE: Vsiual Stu ...

  6. 2.2 利用项目模板创建ASP.NET MVC项目

    1.启动VS2012,点击“文件|新建|项目”. 2.在新建项目的窗口中,选择ASP.NET MVC 4应用程序. 3.在新ASP.NET MVC 4项目窗口中的“选择模板”列表中选择“基本”模板,在 ...

  7. 在 ASP.NET MVC 项目中使用 WebForm、 HTML

    原文地址:http://www.cnblogs.com/snowdream/archive/2009/04/17/winforms-in-mvc.html ASP.NET MVC和WebForm各有各 ...

  8. ASP.NET MVC 项目分离

    ASP.NET MVC 项目分离 说明: ZRT.Web 是前台网站,目录[D:\ZRT.Web\] ZRT.Admin 是后台管理,目录[D:\ZRT.Web\Applications\Admin\ ...

  9. ASP.NET MVC项目

    ASP.NET MVC项目里创建一个aspx视图 先从控制器里添加视图 视图引擎选"ASPX(C#)",使用布局或模板页不要选. 在Views\EAV目录里,生成的aspx是个单独 ...

随机推荐

  1. pl sql 记住用户名密码

    tools--Preferences--Logon History 选择  “Store history”是默认勾选的,勾上“Store with password” 登录时从下拉框选择用户名则自动登 ...

  2. centos下编译安装mysql5.5/5.6/5.7

    2018-12-28 14:38:46 星期五 centos 系统在mysql官网, 按照教程去配置yum源, 然后安装, 不用自己找依赖了: https://dev.mysql.com/doc/my ...

  3. robotium之does not have a signature matching问题

    今天发现个很low的问题,脚本都写好了,运行Robotium测试用例时报错如下: [2017-03-01 09:58:54 - baiduAppTest] Test run failed: Permi ...

  4. Android动态控制状态栏显示和隐藏

    记得之前有朋友在留言里让我写一篇关于沉浸式状态栏的文章,正巧我确实有这个打算,那么本篇就给大家带来一次沉浸式状态栏的微技巧讲解. 其实说到沉浸式状态栏这个名字我也是感到很无奈,真不知道这种叫法是谁先发 ...

  5. LeetCode(56):合并区间

    Medium! 题目描述: 给出一个区间的集合,请合并所有重叠的区间. 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18] ...

  6. PHP魔术方法实例

    PHP中把以两个下划线__开头的方法称为魔术方法,这些方法在PHP中充当了举足轻重的作用. 魔术方法包括: __construct(),类的构造函数 __destruct(),类的析构函数 __cal ...

  7. PHP数组序列化和反序列化

    PHP序列化在我们实际项目运行过程中是一种非常常见的操作.比如当我们想要将数组值存储到数据库时,就可以对数组进行序列化操作,然后将序列化后的值存储到数据库中.其实PHP序列化数组就是将复杂的数组数据类 ...

  8. js----jquery和js的区别

    1.在htlm页面中引入jquery文件后,想获取<input>输入框的数据 <input type='text' id = 'username>' var text = $( ...

  9. Word Highlight设置详解

  10. SimInfo获取(MCC, MNC, PLMN)

    String NUMERIC = getSIMInfo(); protected String getSIMInfo() { TelephonyManager iPhoneManager = (Tel ...