2013-02-19 22 views

Trả lời

3

Bạn cần sử dụng chức năng sharing. Nó sẽ cho phép bạn tạo một mẫu email (thiết lập chủ đề, cơ thể, người nhận, vv) và mở nó cho người dùng, vì vậy họ có thể chỉ cần nhấp vào "gửi". Không có những thứ như khách hàng smtp, tốt hơn hay tệ hơn. Here 'sa Mô tả thoải mái lựa chọn của bạn để gửi một cái gì đó từ Windows Phone 8.

8

Bạn có thể sử dụng Microsoft.Phone.Tasks.EmailComposeTask để soạn một e-mail bằng cách sử dụng mail client sẵn:

var task = new EmailComposeTask {To = email}; 
    task.Show(); 

Hoặc bạn có thể gửi dữ liệu đến một Dịch vụ của bên thứ 3, chẳng hạn như SendGrid để gửi e-mail qua API.

Không có SMTP API có sẵn trên Windows Phone.

+0

Cảm ơn bạn đã trả lời! – user2087149

2

Bạn cũng có thể sử dụng thư viện của bên thứ ba LiveMailMesage. Bạn phải trả tiền cho nó, nhưng nó sẽ cho phép bạn gửi email mà không cần khởi chạy EmailComposeTask. Nó cũng sẽ cho phép bạn thêm tập tin đính kèm và những thứ như thế nếu bạn cần.

8

Nó thực sự đơn giản! Đây là từ MSDN:

Trước tiên, bạn nên thêm:

using Microsoft.Phone.Tasks; 

mã của bạn, và sau đó cho cá nhân hoá và đi vào ứng dụng thư thêm này:

EmailComposeTask emailComposeTask = new EmailComposeTask(); 

    emailComposeTask.Subject = "message subject"; 
    emailComposeTask.Body = "message body"; 
    emailComposeTask.To = "[email protected]"; 
    emailComposeTask.Cc = "[email protected]"; 
    emailComposeTask.Bcc = "[email protected]"; 

    emailComposeTask.Show(); 
+0

chúng tôi có thể đính kèm tệp ở đây không có trong giao diện người dùng nhiệm vụ không? –

2

Nếu bạn đang phát triển một Ứng dụng Windows WinRT toàn cầu, bạn có thể sử dụng không gian tên Windows.ApplicationModel.Email.EmailMessage vì không gian tên Microsoft.Phone.Tasks.EmailComposeTask không hoạt động trên ứng dụng WinRT.

Sau đó, sử dụng mã này để tạo và khởi chạy một email mới.

// Create your new email message. 
var em = new EmailMessage() ; 

// Add as much EmailRecipient in it as you need using the following method. 
em.To.Add(new EmailRecipient("[email protected]")); 
em.Subject = "Your Subject..."; 
em.Body = "Your email body..."; 
// You can add an attachment that way. 
//em.Attachments.Add(new EmailAttachment(...); 

// Show the email composer. 
await EmailManager.ShowComposeNewEmailAsync(em); 
0

Theo như tôi tìm kiếm về này không System.Net.Mail không có sẵn trong Windows Phone

Đối với nhiều trường hợp khác (đặc biệt là hình thức phản hồi) bạn có thể tốt hơn tắt kết nối đến một trang web chuyên dụng dịch vụ thay vì đi vòng qua email.

Và nếu bạn đang viết ứng dụng email và đặc biệt cần kết nối với máy chủ thư thì không có gì trong hộp, do đó bạn cần kết nối với API dịch vụ cụ thể (nhiều dịch vụ thư hiện đại hỗ trợ REST) khách hàng) hoặc tự thực hiện SMTP.

Sẽ dễ dàng tạo một API để gửi Json tới máy chủ và SMTP sẽ được định cấu hình ở đó.

+0

không phải là câu trả lời cho câu hỏi. –

Các vấn đề liên quan