Windows Azure启动任务未触发

时间:2012-02-16 14:53:41

标签: asp.net windows azure task startup

我有一个标准的ASP.Net应用程序,我在其中添加了Azure部署项目以部署到Azure。该应用程序可以很好地部署到Azure。

然后我想扩展它以启动任务。

我将以下内容添加到ServiceDefintion.csdef

<Startup>
  <Task commandLine="startup.cmd" executionContext="elevated" taskType="simple"/>
</Startup>

startup.cmd位于应用程序bin文件夹中。我已经记录了命令文件,所以我可以看到它没有被执行。

当我将同一个应用程序部署到本地计算机上的Compute Emulator时,启动任务正确执行。

我错过了什么吗?

2 个答案:

答案 0 :(得分:1)

您的“startup.cmd”不应只在您的应用BIN文件夹中,而是在根文件夹中,并标记为“内容”和“复制到输出目录” - &gt; “总是复制”。否则它将不会部署到Azure。

关注Web应用程序的另一个时刻是,您最有可能将bin文件夹也放在启动任务定义中。类似的东西:

<Startup> 
  <Task commandLine="./bin/startup.cmd" executionContext="elevated" taskType="simple"/> 
</Startup> 

希望这有帮助。

答案 1 :(得分:0)

派对有点晚了。

我也有这个问题,对我而言,我将Web角色项目设置为启动项目而不是Azure Cloud Service项目。通过将Azure Cloud Service设置为启动项目,您可以使用azure仿真器启动项目,这需要启动,运行和停止事件,以便在您的Azure环境中工作。