2014-04-13 2 views
3

표준 UserManager 및 EmailService를 사용하여 사용자 등록을위한 전자 메일 확인을 구현하려합니다.UserManager.SendEmailAsync throw Message.Destination is null

public Task SendAsync(IdentityMessage message) 
    { 
     return SendSupportMail(message.Subject, message.Body, message.Destination); 
    } 

메시지 : 어떤 이유

내가 IdentityMessage.Destnation가 null이 ("", "userId를,") UserManager.SendEmailAsync를 호출하는 동안

...

여기 내 EmailService 구현입니다. 목적지가 null ...

내가 뭘 잘못하고 있니?

p.s. 나는 정수의`개인 키가 구현 된 UserManager를 가지고있다. 추워서 여기 어딘가에서 문제가되는거야?

도움 주셔서 감사합니다.

답변

4

즉, 사용자에게 이메일 주소가 없음을 의미합니다.

var msg = new IdentityMessage 
{ 
    Destination = await GetEmailAsync(userId), 
    Subject = subject, 
    Body = body, 
}; 

당신은 사용자가 데이터베이스에서 이메일 주소가 있는지 확인해야 다음 message 매개 변수는이 방법으로 생성됩니다. 자신 만의 UserStore을 만들려면 UserStore.GetEmailAsync 구현을 확인하십시오.

+1

감사합니다. 사실 내 이메일 소품이 문제였습니다. 나는 나의 것으로 기본 하나를 재정의했다. – ArkadyB