我在.Net Core项目中使用Azure Notification Hub的预览版。在我们的服务器上,我让它为通知中心安装设备。我可以设法将设备安装到后端的通知中心,并能够通过门户网站向iOS设备发送测试。
我试图在后端代码中添加一行
[HttpPost]
[Route("TestMessage")]
public async Task<IActionResult> NotifyByTemplate([FromBody] ApiAttendanceModel model)
{
//string jsonMessage, IDictionary<string, string> additionalProperperties, string tagExpressions
var additionalProperties = new Dictionary<string, string>();
additionalProperties.Add(Constants.Constant.NotificationMsgName, "asdf");
var hub = NotificationHubClient.CreateClientFromConnectionString(Constants.Constant.NotificationConnectionString, Constants.Constant.NotificationHubName);
var result = hub.SendAppleNativeNotificationAsync("{'aps':{ 'alert':'Notification hub test notification' }}");//await hub.SendTemplateNotificationAsync(additionalProperties);
return Ok(true);
}
我甚至使用了hub.SendTemplateNotificationAsync。没有通知进来。
我不知道推送通知的预览版工作是否适用于.net Core。
我觉得你没等到hub.SendAppleNativeNotificationAsync。它可能会导致您的方法在发送通知之前返回并且您松开上下文的问题。