2013-06-11 26 views
5

我有配置我的服务器自动启动功能所概述这里Ninject工作:IIS 7.5自动启动不使用Web激活

http://msdn.microsoft.com/en-us/library/ee677260(v=azure.10).aspx

我不使用自定义的方法,因为我并不需要做任何预暖,

我只是应用程序池设置为自动启动和应用程序与serviceAutoStartEnabled设置为true。

<add name="PluckBuildServer" managedRuntimeVersion="v4.0" startMode="AlwaysRunning"> 
<application path="/" applicationPool="PluckBuildServer" serviceAutoStartEnabled="true"> 

显然这还不足以启动Ninject用来启动的WebActivator。任何想法如何得到这个工作?另外请注意,我真的需要能够使用PowerShell脚本所有这一切。

这是WebActivator行我有我的Ninject App_Start类:

[assembly: WebActivator.PreApplicationStartMethod(typeof(Pluck.Build.Server.App_Start.NinjectWebCommon), "Start")] 

你的帮助是极大的赞赏。

+0

WebActivator无法运行,这很奇怪。 AutoStart只是确保应用程序启动。鉴于Webactivator只是运行的东西,你确定你的应用程序正在正确启动? –

回答

6

好吧,我只是有一个类似的问题。当我在本地IIS(7.5)上运行应用程序时,Ninject没有注册,但在IIS Express中运行正常。问题是我在web.config的编译节点中有batch =“false”。将batch设置为true(这是默认值)解决了这个问题。

+1

同样,optimizeCompilations选项似乎也可以防止这种情况发生。将它重新设置为“false”为我解决了这个问题。 – medkg15