是否可以通过电子邮件发送使用c#制作的应用程序的文件或数据?
我有一个程序将其数据存储在sqlite
数据库appdata
。所以我需要定期(或每天)备份,以防意外删除数据,而无需通过互联网手动发送。
如果有可能,你可以帮我吗?喜欢在这里发帖链接或关于如何...答案非常感谢。
程序在database.sqlite
文件夹中创建文件AppData/MyProgram
,我想发送该文件。
答案 0 :(得分:2)
我写了一个简单的指南来做你想做的事。
SmtpClient
班级和MailMessage
班级。答案 1 :(得分:1)
您可以使用.Net邮件类发送附有文件的电子邮件作为附件。 以下是发送带附件的电子邮件的代码。
var smtp = new System.Net.Mail.SmtpClient();
{
MailMessage mail = new MailMessage();
mail.From = new MailAddress(sFromEmail);
string sFrom = mail.From.ToString();
mail.Subject = sSubject;
mail.Body = sBody;
mail.IsBodyHtml = true;
Attachment sMailAttachment;
sMailAttachment = new Attachment("Your file file");
mail.Attachments.Add(sMailAttachment);
smtp.Host = "SMTPP HOST"
smtp.Port = "PORT"
smtp.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
smtp.Credentials = new NetworkCredential(sSMTPUserName, sSMTPPassword);
smtp.Timeout = 30000;
smtp.Send(mail);
}
答案 2 :(得分:0)
有很多关于如何使用C#发送电子邮件的文章(以及StackOverflow帖子),只需在"发送电子邮件c#" this post可以帮助您入门。
您唯一需要确保的是,您有一个您有权发送的smtp服务器(外发邮件服务器)。通常,这意味着您的公司的互联网服务提供商的邮件服务器,但这需要检查,因为它往往对每个人都不同。
另外:请注意大多数(如果不是全部)"常规" smtp服务器将限制您可以发送的每分钟或每小时的电子邮件数量,因此不要过度。
答案 3 :(得分:0)
public void mail()
{
MailMessage sendmsg = new MailMessage("frommail", "tomail", "subject", "body");
SmtpClient client = new SmtpClient("smtp.gmail.com");
client.Port = Convert.ToInt16("587");
client.Credentials = new System.Net.NetworkCredential("frommail", "password");
Attachment sMailAttachment;
sMailAttachment = new Attachment("your file");
sendmsg.Attachments.Add(sMailAttachment);
client.EnableSsl = true;
client.Send(sendmsg);
}