小编let*_*hek的帖子

Azure网站 - 使用PowerShell或跨平台CLI配置SSL绑定

我们的情况是,我们希望经常向许多Azure网站添加新的自定义子域,并且我们需要能够自动化该过程,以便最大限度地减少对手动干预的需求以及将某些内容搞砸的风险.

Azure Cross-Platform CLI工具和PowerShell cmdlet为我提供了足够的功能,可以将其全部编写,SSL绑定明显例外......这些网站都是仅限HTTPS的,我们添加的每个域都需要SNI SSL捆绑.

Azure管理门户允许您手动配置网站域的SSL绑定.如何使用PowerShell cmdlet或跨平台CLI工具实现相同目的?如果不可能使用这些工具中的任何一种,那么我是否有其他方法可以在我们向网站添加/删除域时编写流程脚本?

powershell ssl azure azure-web-sites

8
推荐指数
1
解决办法
1389
查看次数

从SignalR集线器发送异步邮件

我需要通过SignalR集线器调用发送电子邮件.我不希望send同步执行,因为我不想绑定WebSocket连接,但是如果可能的话,我希望通知调用者是否有任何错误.我以为我可以在集线器中使用这样的东西(减去错误处理和我希望它做的所有其他事情):

public class MyHub : Hub {
    public async Task DoSomething() {
        var client = new SmtpClient();
        var message = new MailMessage(/* setup message here */);
        await client.SendMailAsync(message);
    }
}
Run Code Online (Sandbox Code Playgroud)

但很快发现它不起作用; client.SendMailAsync调用抛出这个:

System.InvalidOperationException:此时无法启动异步操作.异步操作只能在异步处理程序或模块中启动,或者在页面生命周期中的某些事件中启动.

进一步的调查和阅读告诉我,SmtpClient.SendMailAsync是围绕EAP方法的TAP包装器,而SignalR不允许这样做.

我的问题是,有没有简单的方法直接从集线器方法发送电子邮件?

或者我唯一的选择是将电子邮件发送到其他地方吗?(例如,让集线器队列成为服务总线消息,然后一个独立服务可以处理这些消息并发送电子邮件[虽然我也有更多的工作来实现结果通知回集中的客户端];或者让集线器向发送电子邮件的Web服务发出HTTP请求.

c# email smtpclient async-await signalr

5
推荐指数
1
解决办法
2187
查看次数