如何从IIdentityMessageService中的SendAsync返回错误消息?

时间:2014-09-02 08:50:20

标签: asp.net-identity asp.net-identity-2

我正在努力弄清楚如何在ASP.NET Identity 2.1的IIdentityMessageService实现中返回错误消息,即:

Task SendAsync(IdentityMessage message);

当生成并发送2FA代码时,我想在SMS失败时陷阱并显示错误消息:

public async Task<ActionResult> SendCode(SendCodeViewModel model)
..
var token = await this.UserManager.GenerateTwoFactorTokenAsync(userId, model.SelectedProvider);
var result = await this.UserManager.NotifyTwoFactorTokenAsync(userId, model.SelectedProvider, token);

我希望第二次调用报告result.Succeeded == false并允许我阅读result.Errors的错误消息。

这有办法做到这一点,还是我以错误的方式看待它,应该使用不同的方法来捕获SendAsync上的任何错误?

1 个答案:

答案 0 :(得分:3)

SendAsync现在并不意味着返回错误消息,您可以通过抛出然后捕获SendCode中的异常来完成您想要的任何操作,以显示您想要的错误。