Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法在asp.net C中发送电子邮件#_C#_Asp.net_Email_Web Config_Smtp - Fatal编程技术网

C# 无法在asp.net C中发送电子邮件#

C# 无法在asp.net C中发送电子邮件#,c#,asp.net,email,web-config,smtp,C#,Asp.net,Email,Web Config,Smtp,我知道这个话题之前已经详细阐述过了,但我已经在互联网上寻找了各种解决方案,到目前为止没有任何帮助 我正在制作一个web应用程序,它在某一点上应该向用户提供的电子邮件发送一封电子邮件。我正试图从我的gmail帐户发送它 我尝试了以下方法: public void test() { var client = new SmtpClient("smtp.gmail.com", 587) { Credentia

我知道这个话题之前已经详细阐述过了,但我已经在互联网上寻找了各种解决方案,到目前为止没有任何帮助

我正在制作一个web应用程序,它在某一点上应该向用户提供的电子邮件发送一封电子邮件。我正试图从我的gmail帐户发送它

我尝试了以下方法:

public void test()
        {
            var client = new SmtpClient("smtp.gmail.com", 587)
            {
                Credentials = new NetworkCredential("mygmail@gmail.com", "password*"),
                EnableSsl = true
            };
            client.Send("mygmail@gmail.com", "mygmail@gmail.com", "test", "testbody");
            Console.WriteLine("Sent");
            Console.ReadLine();
        }
我得到以下错误:
服务器响应为:需要5.5.1身份验证。

在我的web.config文件中,我写道

 <system.net>
    <mailSettings>
        <smtp>
            <network host="smtp.google.com" password="" userName=""/>
        </smtp>
    </mailSettings>
    </system.net> 

但那没用。我还尝试添加
密码*
和用户名(
mygmail@gmail.com
)而不是
用户名和密码的空字符串,但我仍然得到了相同的错误

谁能帮我一下吗?
谢谢。

在指定自定义凭据之前,请尝试将UseDefaultCredentials设置为false。

很好,它起作用了。我总是发布一个关于堆栈溢出的问题,然后立即自己解决。这很尴尬。问题是,我在测试的帐户上设置了两步验证,因此我无法登录。因此,我做了一个新的基本帐户,它的工作就像魅力。不过我会接受你的正确答案。因为你可能正试图像我一样获得更多的声誉。谢谢你的回复!