如何更新Azure Notification Hub注册中的到期时间?

我一直在使用Azure Notification Hubs。 但是,我为一个新项目创建了一个新的通知中心,我注意到了一些非常奇怪的行为。 每当我创建注册时,其ExpirationDate设置为12/31/9999 7:59:59

因此,对于某些人来说,我认为这可能是一个好处,但我想在一段时间不活动后让我失效。 我查看了RegistrationDescription对象并找到了ExpirationTime,但它只读…

我该如何设置? 这只是Azure中的一个错误吗? 也许我在Azure配置中缺少一个标志?

您可以这样做,但在集线器级别,而不是在注册级别。 查看Notification Hubs改进的每消息遥测和设备到期博客文章:

要利用此到期更改,只需更新通知中心的生存时间属性即可。 这可以通过REST或我们的.NET SDK完成:

 var namespaceManager = NamespaceManager.CreateFromConnectionString("connectionstring"); NotificationHubDescription hub = namespaceManager.GetNotificationHub("foo"); hub.RegistrationTtl = TimeSpan.MaxValue; namespaceManager.UpdateNotificationHub(hub); 

要通过REST API执行此操作,请查看更新通知中心方法,该方法采用NotificationHubDescription主体,其中包含RegistrationTtl节点。 这应该是REST代码上面的SDK代码片段。