none
vs 2017 UWP envoyer et recevoir un email code c#

    Question

  • bonjour je viens d'essayer d’écrire un code qui me permettrait grâce a un click sur un bouton d'envoyer un émail mais je rencontre une erreur que je sais pas corriger  pouvez vous m'aider  a réparer cette erreur un grand merci d'avance voici la copie d’écran  de mon développement un grand MERCI

    jeudi 22 mars 2018 16:41

Réponses

  • Désolé pour le retard de réponse.

    Il suffit de créer un contact temporaire (que vous pouvez sauvegarder dans votre liste de contact à tout moment) comme ceci :

    private async void Button_Click(object sender, RoutedEventArgs e)
            {
                var contact = new Windows.ApplicationModel.Contacts.Contact();
                contact.Emails.Add(new Windows.ApplicationModel.Contacts.ContactEmail() { Address = textBoxName.Text });
    
                await ComposeEmail(contact, "Sujet du mail", "Contenu du mail");
            }
    
            private async Task ComposeEmail(Windows.ApplicationModel.Contacts.Contact recipient,
                string subject, string messageBody)
            {
                var emailMessage = new Windows.ApplicationModel.Email.EmailMessage();
                emailMessage.Body = messageBody;
    
                var email = recipient.Emails.FirstOrDefault<Windows.ApplicationModel.Contacts.ContactEmail>();
                if (email != null)
                {
                    var emailRecipient = new Windows.ApplicationModel.Email.EmailRecipient(email.Address);
                    emailMessage.To.Add(emailRecipient);
                    emailMessage.Subject = subject;
                }
    
                await Windows.ApplicationModel.Email.EmailManager.ShowComposeNewEmailAsync(emailMessage);
            }

    N'oubliez pas de cocher la case de capacité Contacts dans le manifest UWP :

    Cordialement,

    • Marqué comme réponse SIMONGEORGES vendredi 6 avril 2018 08:41
    vendredi 23 mars 2018 13:43

Toutes les réponses

  • Bonjour SIMONGEORGES,

    Voici la documentation pour l'envoie de mail en UWP : Send emails.  Pour le contact, utilisez la classe Contact que vous pouvez créer manuellement ou en récupérer un depuis vos contacts Windows 10. 

    Cordialement, 

    vendredi 23 mars 2018 10:15
  • bonjour

    merci de votre réponse je l'ai copié y a pas d'erreur mais comment faire pour que le click du bouton envoi de 

    e mail déclenche le private  async je fais pas faire pouvez vous m'aider  cela me permettrait de faire un pas de plus dans mon parenthésage

    merci d'avance

    vendredi 23 mars 2018 11:08
  • Désolé pour le retard de réponse.

    Il suffit de créer un contact temporaire (que vous pouvez sauvegarder dans votre liste de contact à tout moment) comme ceci :

    private async void Button_Click(object sender, RoutedEventArgs e)
            {
                var contact = new Windows.ApplicationModel.Contacts.Contact();
                contact.Emails.Add(new Windows.ApplicationModel.Contacts.ContactEmail() { Address = textBoxName.Text });
    
                await ComposeEmail(contact, "Sujet du mail", "Contenu du mail");
            }
    
            private async Task ComposeEmail(Windows.ApplicationModel.Contacts.Contact recipient,
                string subject, string messageBody)
            {
                var emailMessage = new Windows.ApplicationModel.Email.EmailMessage();
                emailMessage.Body = messageBody;
    
                var email = recipient.Emails.FirstOrDefault<Windows.ApplicationModel.Contacts.ContactEmail>();
                if (email != null)
                {
                    var emailRecipient = new Windows.ApplicationModel.Email.EmailRecipient(email.Address);
                    emailMessage.To.Add(emailRecipient);
                    emailMessage.Subject = subject;
                }
    
                await Windows.ApplicationModel.Email.EmailManager.ShowComposeNewEmailAsync(emailMessage);
            }

    N'oubliez pas de cocher la case de capacité Contacts dans le manifest UWP :

    Cordialement,

    • Marqué comme réponse SIMONGEORGES vendredi 6 avril 2018 08:41
    vendredi 23 mars 2018 13:43