Mar*_*man 55 asp.net-mvc owin visual-studio-2013
我刚刚安装了Visual Studio 2013,创建了一个MVC Web应用程序项目,并在项目模板中注意到一个名为Startup.cs的新文件.
这是什么,这与Global.asax.cs有何不同,是否有任何关于使用它的最佳实践?
Lin*_*Lin 32
每个OWIN应用程序都有一个启动类,您可以在其中指定应用程序管道的组件.
如果您启动一个新的Visual Studio项目,您将看到其中的OWIN部分.OWIN是一种规范,用于定义框架和服务器的API以进行协作.OWIN的目的是解耦服务器和应用程序.例如,ASP.NET Identity使用OWIN安全性,SignalR自托管使用OWIN托管等,这些示例都使用OWIN,因此它们都需要有一个启动类,在"Startup.cs"文件中定义.
Global.asax是ASP.NET应用程序文件,是一个可选文件,包含用于响应ASP.NET或HttpModules引发的应用程序级事件的代码.
更多细节:
OWIN
http://www.asp.net/aspnet/overview/owin-and-katana
Global.asax中
http://msdn.microsoft.com/en-us/library/1xaas8a2(v=vs.71).aspx
您可以在以下文章中找到有关OWIN原因的更多信息:
http://www.asp.net/aspnet/overview/owin-and-katana/an-overview-of-project-katana
该文件似乎与SignalR有关.引用VS 2013发行说明:
建立在OWIN上
SignalR 2.0完全基于OWIN(.NET的开放Web界面)构建.这一变化使得SignalR的设置过程在Web托管和自托管SignalR应用程序之间更加一致,但也需要进行大量的API更改.
MapHubs和MapConnection现在是MapSignalR
为了与OWIN标准兼容,这些方法已重命名为MapSignalR.不带参数调用的MapSignalR将映射所有集线器(如版本1.x中的MapHubs所示); 映射单个PersistentConnection对象,将连接类型指定为类型参数,并将连接的URL扩展指定为第一个参数.
在Owin启动类中调用MapSignalR方法.Visual Studio 2013包含Owin启动类的新模板; 要使用此模板,请执行以下操作:
- 右键单击该项目
- 选择添加,新项目...
- 选择Owin Startup类.将新类命名为Startup.cs.
在Web应用程序中,使用Web.Config文件的应用程序设置节点中的条目将包含MapSignalR方法的Owin启动类添加到Owin的启动过程,如下所示.
在自托管应用程序中,Startup类作为WebApp.Start方法的type参数传递.
Startup类是Katana/OWIN寻找初始化管道的惯例.当您的应用程序启动时,将运行Configuration函数内部的代码来设置将要使用的组件.在MVC 5模板中,它用于连接所有构建在OWIN之上的身份验证中间件.
如果你想使用依赖注入OWIN,请在GitHub上查看这个项目:DotNetDoodle.Owin.Dependencies
| 归档时间: |
|
| 查看次数: |
50731 次 |
| 最近记录: |