如何用c#为桌面应用程序创建电子邮件身份验证表单

本文关键字:创建 电子邮件 身份验证 表单 应用程序 桌面 何用 | 更新日期: 2023-09-27 17:49:33

我正试图使windows应用程序问Gmail用户名和密码从用户,如果它是有效的去进一步,谁可以帮助?这是我的代码到目前为止:我不知道该在if()语句中放些什么来检查用户名和密码是否有效

   private void logIn_Click(object sender, EventArgs e){
        string user, pass;
        user = userName.Text;
        pass = password.Text;
        var smtp = new SmtpClient
        {
            Host = "smtp.gmail.com",
            Port = 587,
            EnableSsl = true,
            DeliveryMethod = SmtpDeliveryMethod.Network,
            UseDefaultCredentials = false,
            Credentials = new NetworkCredential(userName.Text,password.Text)
        };
        if (//userName and password is a valid gmail account)
      {
            Options compose = new Options();
            Visible = false;
            compose.Show();
        }
        else {
            warning.Text = "Wrong Username or Password";
        }

如何用c#为桌面应用程序创建电子邮件身份验证表单

在调用SMTP服务器之前,您无法知道所提供的凭据是否正确(当然,您总是可以对电子邮件地址进行基本验证)。

假设用户键入了一条消息,您尝试发送它。在调用SmtpClient时,您将知道凭据是错误的。发送并获得SmtpException(确保阅读我链接到的文档,因为相同的异常可能意味着其他事情出错)。

您最好的选择是在try/catch中对SMTP服务器执行该操作,并捕获SmtpException并使用它做一些有用的事情。