当我们建立默认的 .NET Framework4.5.2框架下的Web  MVC 应用程序后,调试过程中我发现在程序启动页面加载完成会执行一段代码,这段代码让人有点摸不着头脑,因为之前完全没见过,调试了一下,还是不明白。然后我就查了很久的资料,虽然没有完全弄懂概念,但大致是什么算是了解一些了。

首先了解“Startup.Auth.cs”这个文件:App_Start, 该文件夹包含应用程序的配置逻辑文件, 具体包括BundleConfig.cs, FilterConfig.cs, RouteConfig.cs, Startup.Auth.cs。BundleConfig.cs: 注册所使用的捆绑的CSS 和 JS文件。FilterConfig.cs: 注册外部/全局过滤器,这些过滤器可以被应用到每个Action和Controller中去。RouteConfig.cs: 配置MVC应用程序的系统路由路径。Startup.Auth.cs: 配置MVC应用程序的安全信息,包括Authentication和Authorization配置以及第三方Authentication Provider。

然后了解一下“Startup.cs”这个文件:在根目录下的这个文件,主要是提供给OWIN(Open Web Interface for .NEt)应用程序使用,OWIN的目的是为了解耦服务器应用程序。例如在ASP.NET Identity使用OWIN security, SignalR self hosting使用OWIN hosting等情况下, 我们的MVC应用程序都有使用到OWIN, 所以,他们都相应的会使用到startup.cs所定义的Startup class. 关于OWIN的应用这里不作详述,这里提到OWN主要是为了说明Startup.cs文件的使用.

因此下面就要了解OWIN的这个概念了,具体的我仔细看了一下这篇文章,首先膜拜一下。文章地址 http://www.360doc.com/userhome/14692560。

下面就赘述一下我的浅薄见解了,希望大神们指点迷津。

启动应用程序之后,当加载完_ViewStart、_Layout视图完成之后(这里设置了路由,启动程序直接进入地址+端口号式初始化地址),然后进入Startup类的Configuraion方法(注意这里有assembly:OwinStartupAttribute特性,这个特性)。

关于MVC中Start.cs文件的作用的更多相关文章

  1. python中__init__.py文件的作用

    问题 在执行models.py时,报ImportError:No module named transwarp.db的错误,但明明transwarp下就有db.py文件,路径也没有错误.真是想不通.后 ...

  2. Python包中 __init__.py文件的作用

    原创连接 https://www.cnblogs.com/AlwinXu/p/5598543.html Python包中 __init__.py文件的作用 在创建python包的过程中,IDE都会在包 ...

  3. Python中__init__.py文件的作用详解

    转自http://www.jb51.net/article/92863.htm Python中__init__.py文件的作用详解 http://www.jb51.net/article/86580. ...

  4. Linux中常用头文件的作用--转

    http://blog.sina.com.cn/s/blog_5c93b2ab0100q62k.html 1. Linux中一些头文件的作用: <assert.h>:ANSI C.提供断言 ...

  5. 谈谈对XML的理解?说明Web应用中Web.xml文件的作用?

    谈谈对XML的理解?说明Web应用中Web.xml文件的作用? 解答:XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard ...

  6. 转载:【学习之家】Python中__init__.py文件的作用

    Python中__init__.py文件的作用详解 Python中__init__.py文件的作用详解 来源:学习之家 作者:xuexi110 人气:357 发布时间:2016-09-29 摘要:__ ...

  7. python包中__init__.py文件的作用

    python包中__init__.py文件的作用 __init__.py文件最常用的作用是标识一个文件夹是一个 python包. __init__.py文件的另一个作用是定义模糊导入时要导入的内容. ...

  8. AssemblyInfo.cs文件的作用

    在asp.net中有一个配置文件AssemblyInfo.cs主要用来设定生成的有关程序集的常规信息dll文件的一些參数,以下是默认的AssemblyInfo.cs文件的内容详细介绍 //是否符合公共 ...

  9. WinForm中AssemblyInfo.cs文件参数具体讲解

    在.NET中有一个配置文件AssemblyInfo.cs主要用来设定生成的有关程序集的常规信息dll文件的一些参数,下面是默认的AssemblyInfo.cs文件的内容具体介绍 //是否符合公共语言规 ...

随机推荐

  1. href链接的地址

    tencent://message/?uin=QQ号. 链接一个弹出框.指向一个QQ号.

  2. Office 365 SharePoint Online 学习链接

    Here is an article about how to develop for SharePoint Online(Ofiice 365):http://www.microsoft.com/e ...

  3. Spring Security (一)

    一.pom.xml <!-- spring security --> <dependency> <groupId>org.springframework.secur ...

  4. mysql语句中日期函数和日期的加减运算

    一.秒数和时钟格式的互相转化 SEC_TO_TIME(seconds) 返回seconds参数,变换成小时.分钟和秒,值以'HH:MM:SS'或HHMMSS格式化,取决于函数是在一个字符串还是在数字. ...

  5. win10 内测14352 加入了容器 和docker新功能,想体验的赶快升级

    原来只在server2016上有,现在加入到win0内测版了windows 容器提供了两种级别的隔离技术,分别是Windows Server container  和Hyper-V Container ...

  6. imx6sl 调试记录

    公板芯片型号:MCIMX6L8DVN10AB 我的板子芯片型号:MCIMX6L2EVN10AB no GPU ,no EPDC 调板子时一定要注意,首先要搞清楚硬件芯片的具体差异,然后去nxp的官网找 ...

  7. linux下查看tomcat和jdk版本号

    linux下查看tomcat和jdk版本号的命令: 这个需要进入到bin目录下面 ,执行"./version.sh"命令 [root@hncsweb bin]# ./version ...

  8. DevExpress gridControl 设置分组

    有些代码非常有用,但是用的时候就记不清怎么写,所以就在这里打个草稿. //设置组汇总 private void SetSummation() { this.gridViewShipment.Group ...

  9. Qt之C语言类型typedef a[]等

    01:typedef类型:给类型起别名,typedef int d[5];定义了一个类型即一个5个int类型的数据.所以d c;的长度是就是4 * 10:

  10. CSS之立体球体

    <!DOCTYPE html><html><head> <title>球体</title> <meta charset="u ...