2014-06-11 4 views
3

Windows Phone Universal App 용 전자 메일 보내기 코드를 작성하려고했습니다. 이것은 내 이벤트 처리기에 작성한 코드입니다.Windows Phone Universal Apps에서 전자 메일 보내기 작업

Windows.ApplicationModel.Email.EmailMessage email = new Windows.ApplicationModel.Email.EmailMessage(); 
email.Subject = "Good morning"; 
email.Body = "Hello, how are you?"; 

var emailRecipient = new Windows.ApplicationModel.Email.EmailRecipient(email.Address); 

email.To.Add(emailRecipient); 

await Windows.ApplicationModel.Email.EmailManager.ShowComposeNewEmailAsync(email); 

이 코드는 Windows Phone 8.1 App에서 작동합니다. 하지만 Universal App에서는 작동하지 않습니다. 참조를 추가해야합니까? Universal 앱에서 작동하도록 할 수있는 방법이 있습니까?

고마워요. :)

+0

그래서 무엇에 관한 오류입니까? 참조 또는 방법? –

+0

이 메서드는 비동기 메서드입니다. 그러나 문제는 Windows.ApplicationModel.Email.EmailMessage에서 오류가 발생합니다. 내가 선언 할 때 : var emailMessage = new Windows.ApplicationModel.Email.EmailMessage(); 오류가 발생했습니다. Windows.ApplicationModel.Email.EmailMessage 줄의 Email 아래에 빨간 선이 있습니다. 오류 메시지 : "형식 또는 네임 스페이스 이름 '전자 메일'이 'Windows.ApplicationModel'네임 스페이스에 없습니다. 어셈블리 참조가 누락 되었습니까?" –

+1

제 대답을 읽어주십시오. –

답변

8

Windows Store App에서는 Windows.ApplicationModel.Email 네임 스페이스가 지원되지 않습니다.

EmailMessage class in MSDN을 참조하십시오.

mail을 mailto 프로토콜로 보내고 LaunchUriAsync 메서드를 사용할 수 있습니다. 이 같은 : UWP 개발에

await Launcher.LaunchUriAsync(
    new Uri(
     "mailto:[email protected]?subject=SomeSubject&body=mail content" 
     )); 
+0

고마워요. :) 당신은 그런 라이브 세이버입니다. 존중해라. @Chris Shao –

+0

BTW : 쿼리 문자열을 올바르게 이스케이프 처리해야합니다 ... –

+1

mailto 프로토콜은 첨부 파일을 지원하지 않습니다. –

1

, 윈도우 폰 8.1/윈도우 스토어 앱 여전히 같은 코드의 많은. 아래와 같이 첨부 파일이있는 이메일을 보냅니다.

EmailMessage email = new EmailMessage(); 
email.To.Add(new EmailRecipient("[email protected]")); 
email.Subject = "Blog pos`enter code here`t by @isenthil"; 
var file = await GetTextFile(); 
email.Attachments.Add(new EmailAttachment(file.Name, file)); 
await EmailManager.ShowComposeNewEmailAsync(email); 
+0

** Windows.ApplicationModel.Email ** 네임 스페이스가 지원되지 않으므로 작동하지 않습니다. –

+1

이것은 유일하게 합리적인 답안 스타일입니다 * 나는 거의 모든 답변 중에서 찾았지만 OP 문제를 해결할 수는 없지만 적어도 여전히 괜찮습니다. 다른 모든 대답에 대해서만 이렇게 대답 할 수 있다면. – Ian

+2

감사합니다. 나는 더 많이 향상시킬 것이다. –