从NuGet下载Ninject.MVC3包将创建这个App_Start文件夹,其中包含一个简单的类;我可以补充一句,它甚至没有现成的编译功能。
浏览一下,它似乎没有什么壮观的.功能...或者什么都不做。我在Ninject.Web.Mvc的SampleApplication中也找不到它,而项目本身就来自于此。(https://github.com/ninject/ninject.web.mvc/tree/master/mvc3/src/SampleApplication)
有人能解释一下这个文件夹/类的用途吗?删除它们似乎对我的项目没有影响。有没有什么神秘的忍者理由让我留着它们?(甚至是为什么要制造它们?)
发布于 2011-03-19 02:08:08
发布于 2011-03-19 01:41:33
最新版本的Ninject.MVC3会在项目中创建一个名为App_Start的文件夹。该文件夹包含NinjectMVC3.cs类,这是用于Ninject框架的引导程序代码。它有两个程序集属性,用于启动和停止NinjectMVC3代码。正是这些属性导致WebActivator框架调用引导程序类方法并启动Ninject框架。安装NinjectMVC3还会添加对Microsoft.Web.Infrastructure、Ninject、NinjectMVC3和WebActivator的程序集引用。
NinjectMVC3类包含RegisterServices方法,您可以在其中添加代码以将接口绑定到它们的具体实现。这是您要编辑以配置依赖项的文件。
这是在您的MVC应用程序中使用Ninject来处理依赖项所必需的,也是唯一的要求。应忽略有关向global.asax.cs添加代码的其他说明。
发布于 2013-01-25 23:02:03
这里同样的问题给出了简短的答案=“否”。这只是一个新的约定,它只对大型网站有意义,即使是这样也不确定。
http://weblogs.asp.net/pjohnson/archive/2012/09/07/mvc-4-and-the-app-start-folder.aspx
就我个人而言,我更喜欢在全局应用程序类中处理所有路由和过滤器覆盖,将所有常见内容转移到共享基类中,以便它只包含网站特定的代码。我也不认为需要单独的类。
ASP.NET特殊文件夹的常见情况是它们提供了不同的安全权限。是否有人知道此App_Start文件夹在部分信任环境中是否是必需的?也就是说,对于受限的虚拟主机,这是唯一允许你调用函数来改变站点路由方式的地方吗?
听起来微软的某人正在考虑在未来增加一个额外的安全层,如果它还没有的话。在我看到它在现实世界中的好处之前,我会直接删除它。
https://stackoverflow.com/questions/5355258
复制相似问题