如何在Azure Compute Emulator中调用RoleEntryPoint.OnStop?

问题描述

| 我在Azure Compute Emulator下测试一个普通的Web角色,并在我的课程中重写了从
RoleEntryPoint
派生的
OnStart()
Run()
OnStop()
方法。 called0ѭ和
Run()
调用,但
OnStop()
不是-我将在Visual Studio中按\“ Stop debugging \”或关闭浏览器窗口,角色将终止,但是but2ѭ永不被调用。我已经检查过-
OnStop()
定义中存在
override
关键字。 那不是很方便-这意味着我无法在实时云之外测试我的
OnStop()
。 我可以以某种方式使Compute Emulator呼叫
OnStop()
吗?     

解决方法

        我怀疑(但不确定),如果您打开计算仿真器UI并在其中“停止”部署,则应调用OnStop()。     ,        您可以使用csrun更新正在运行的部署的配置。当您给出命令时,实例将调用OnStop()方法。 要更新ServiceConfigure: 通过命令行打开Azure SDK bin文件夹 发出命令csrun.exe / update:{部署ID,仅数字}; {cscfg文件的路径} 在我的Compute Emulator中,它将是: csrun.exe / update:252; \“ D:\\ user \\ My Documents \\ Visual Studio 2010 \\ Projects \\ CSM \\ CSC \\ bin \\ Debug \\ ServiceConfiguration.cscfg \”     ,        如果您有意退出Run()方法,我相信应该调用OnStop()。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...