C# Azure配置更改而不删除实例

C# Azure配置更改而不删除实例,c#,azure,C#,Azure,我是Azure(2.2)的新手,正在尝试修改配置。我想在azure配置中使用一个标志。特别是停止队列中的处理,并帮助执行阶段迁移和生产迁移 我已经从门户中的config上传了新配置,但在玩了几个小时后,它似乎总是销毁并重新创建实例 是否仍然可以在不销毁实例的情况下更新配置文件 谢谢 *编辑和回答回复* 我确实参与了变化的事件。他们似乎真的运行了,但重启后它就消失了 我的测试,我希望我能很好地解释我自己,但是如果您有一个静态计数器变量,并且您将其默认为1,并且在更改/更改事件中,并在每次事件触发时

我是Azure(2.2)的新手,正在尝试修改配置。我想在azure配置中使用一个标志。特别是停止队列中的处理,并帮助执行阶段迁移和生产迁移

我已经从门户中的config上传了新配置,但在玩了几个小时后,它似乎总是销毁并重新创建实例

是否仍然可以在不销毁实例的情况下更新配置文件

谢谢

*编辑和回答回复*

我确实参与了变化的事件。他们似乎真的运行了,但重启后它就消失了


我的测试,我希望我能很好地解释我自己,但是如果您有一个静态计数器变量,并且您将其默认为1,并且在更改/更改事件中,并在每次事件触发时递增该变量。我还将一个默认为“垃圾”的静态变量设置为事件中设置的新配置值。在多次上传带有多个值的配置并将静态数据与直接从配置中读取的数据进行比较后,结果总是静态数据返回到默认值,并且读取了新的配置标志。已重新启动应用程序域,并再次运行所有初始化代码。这意味着我可以忽略设置更改事件并上载配置,然后让初始化再次发生,这正是我试图避免的。

如果您的设置在ServiceConfiguration.cscfg文件中,您只需在Azure门户中更新配置设置即可。浏览到云服务并选择配置选项卡。向下滚动至设置-更改值,然后保存。

如果您的设置位于ServiceConfiguration.cscfg文件中,您只需在Azure Portal中更新配置设置即可。浏览到云服务并选择配置选项卡。向下滚动到“设置”-更改值,然后保存。

我认为在更改配置设置值时,不会销毁和重新创建角色实例。可以关闭角色实例以应用该设置并将其恢复(换句话说,重新启动)。如果正在运行多个实例,则每次将更改应用于一个实例,以便应用程序继续工作

类具有可用于该目的的事件。一定要看一看。我相信,如果您将
Cancel
属性设置为
false
,则应用更改时不会删除实例

从事件文档页面:

更改事件和更改事件一起用于识别 并管理服务模型的配置更改。通过使用 更改事件时,实例可以响应中的配置更改 以下方法之一:

  • 在运行时接受配置更改,而不脱机

  • 将RoleEnvironmentChangingEventArgs的Cancel属性设置为true以使实例脱机,应用配置更改,然后重试 使实例重新联机

通过使用Cancel属性,可以确保实例 按照有序关机顺序进行,并使其脱机 在应用配置更改之前。停堆期间 进程时,Windows Azure引发停止事件,然后运行任何 在OnStop方法中编写代码


我认为当您更改配置设置值时,不会销毁和重新创建角色实例。可以关闭角色实例以应用该设置并将其恢复(换句话说,重新启动)。如果正在运行多个实例,则每次将更改应用于一个实例,以便应用程序继续工作

类具有可用于该目的的事件。一定要看一看。我相信,如果您将
Cancel
属性设置为
false
,则应用更改时不会删除实例

从事件文档页面:

更改事件和更改事件一起用于识别 并管理服务模型的配置更改。通过使用 更改事件时,实例可以响应中的配置更改 以下方法之一:

  • 在运行时接受配置更改,而不脱机

  • 将RoleEnvironmentChangingEventArgs的Cancel属性设置为true以使实例脱机,应用配置更改,然后重试 使实例重新联机

通过使用Cancel属性,可以确保实例 按照有序关机顺序进行,并使其脱机 在应用配置更改之前。停堆期间 进程时,Windows Azure引发停止事件,然后运行任何 在OnStop方法中编写代码


我认为这是不可能的。我需要进行的配置更改总是会重新启动实例。

我认为这是不可能的。我需要进行的配置更改总是会重新启动实例。

可能我的配置标志设置错误,因为它不会直接显示在门户中。只有Azure配置,如连接字符串和总线内容等。可能我的配置标志设置错误,因为它没有直接显示在门户中。只有Azure配置,如连接字符串和总线等。可能cancel属性是我需要使用的。可能cancel属性是我需要使用的。