Azure Web角色如何在没有入口点的情况下运行?

时间:2012-02-07 08:30:32

标签: .net azure azure-web-roles

出于好奇,我打开了我的Azure Web角色项目,导航到包含RoleEntryPoint后代类的文件,完全删除了该类定义。然后我打包角色并将其部署在Azure中 - 角色启动时没有任何错误指示。

怎么可能有效呢?

2 个答案:

答案 0 :(得分:4)

除了DarwkwingDuck所说的,我还要提到RoleEntryPoint提供在初始化,运行和停止角色实例时运行代码的方法。

如果我们继续阅读RoleEntryPoint class documentation on MSDN,我们还会看到以下内容:

  

辅助角色必须扩展RoleEntryPoint类以添加功能   到角色实例。 Web角色可以选择扩展   RoleEntryPoint类,或者可以使用ASP.NET生命周期管理   处理启动和停止序列的方法。对于VM角色,Windows   使用服务而不是RoleEntryPoint类。

因此, Web角色可以选择扩展RoleEntryPoint类

答案 1 :(得分:3)

无论您是否从中继承,RoleEntryPoint都存在于您的部署中。请注意,该类中的所有方法都会覆盖基类实现。如果您不继承RoleEntryPoint,那么将执行这些基类实现。

这也使得将旧版应用程序更轻松地引入Azure - 只需将现有的Web应用程序作为角色添加到云项目中,即可离开。