Если информация для входа верна на 100%, вам нужно установить UseDefaultCredentials = false
сначала , а затем установить учетные данные, которые вы хотите использовать Credentials = new NetworkCredential("myemail@gmail.com", "myGmailPasswordHere")
.
Если вы сначала задаете учетные данные, когда вы устанавливаете UseDefaultCredentials = false
, это сделает свойство Credentials
равным null
.
Это проводное соединение, но это случилось со мной.
Отладьте ваш код и проверьте, если Credentials
свойство является нулевым, прежде чем позвонить smtp.Send(message);
.Если так, то попробуйте инвертировать порядок.Кажется, у вас это в правильном порядке, но если оно пустое, не используйте встроенную инициализацию.
Надеюсь, это поможет.
РЕДАКТИРОВАТЬ: Если выиспользуя двухэтапную проверку, убедитесь, что вы используете пароль для конкретного приложения