在使用dotnetopenmail组件发送邮件时,本地测试完全没有问题,可以发生邮件,但是放到远程服务器上却怎么都没用,请教高手解答!在服务器上的错误提示是:“请求的名称有效,但是没有找到请求的类型的数据”
代码如下:
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="title">邮件主题</param>
/// <param name="content">邮件内容</param>
/// <param name="receMail">收件人</param>
public static bool SendMail(string title, string content, string receMail)
{
EmailMessage email = new EmailMessage();
email.FromAddress = new EmailAddress("[email protected]", "超级赢家客服中心");
email.AddToAddress(new EmailAddress(receMail, "超级"));
email.Subject = title;
email.HtmlPart = new HtmlAttachment(content);
email.HeaderCharSet = Encoding.GetEncoding("GB2312");
email.HeaderEncoding = EncodingType.Base64;
SmtpServer smtpServer = new SmtpServer("mail.sw-game.com");
smtpServer.SmtpAuthToken = new SmtpAuthToken("[email protected]", "feng*123!");
email.ContentType = "TEXT/HTML";
try
{
email.Send(smtpServer);
return true;
}
catch
{
return false;
}
}
代码如下:
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="title">邮件主题</param>
/// <param name="content">邮件内容</param>
/// <param name="receMail">收件人</param>
public static bool SendMail(string title, string content, string receMail)
{
EmailMessage email = new EmailMessage();
email.FromAddress = new EmailAddress("[email protected]", "超级赢家客服中心");
email.AddToAddress(new EmailAddress(receMail, "超级"));
email.Subject = title;
email.HtmlPart = new HtmlAttachment(content);
email.HeaderCharSet = Encoding.GetEncoding("GB2312");
email.HeaderEncoding = EncodingType.Base64;
SmtpServer smtpServer = new SmtpServer("mail.sw-game.com");
smtpServer.SmtpAuthToken = new SmtpAuthToken("[email protected]", "feng*123!");
email.ContentType = "TEXT/HTML";
try
{
email.Send(smtpServer);
return true;
}
catch
{
return false;
}
}
解决方案 »
- 使用泛型 类型“System.Linq.Set<TElement>”需要“1”个类型参数 报这错
- GridView 如何设置可编辑的CheckBox?
- cookies失效时改变用户登录状态
- 给个ajax的例子,网上找来的都是出错。
- MicrosoftVBScript运行时错误(0x800A0007)内存不够:'server.createobject'/GetErr.asp,第19行
- 小女子肯请大家帮忙!!关于DropDownList的问题
- 页面跳转问题,7456
- 一个老问题:active menu与dropdownlist冲突怎么办?
- 如何给共享一个数据
- 这样的菜单怎么实现??菜鸟一只,大家别笑话啊^_^
- 关于RedirectFromLoginPage的问题?
- 如果用DataAdapter.Fill()返回dataset,但数据源中没有符合strQuery条件的记录时会返回什么格式?
数据类型不正确
我之前没加这句 报的这个错误,后来才加的这句。这个在我本地的xp系统中运行没有问题,可以发送邮件。但到服务器上就不行了,试过很多发送邮件的方式,在本地可以,在服务器就不行了。服务器是windows server 2003的系统。
多包一层Try Catch把前面的设定EMAIL,SMTPServer的地方都包上,并在每个动作之后做好标记,查看一下是哪一步出问题了.
我不知道是不是我windows2003服务器安全配置有误,我关闭了很多不要的端口和服务,但是smtp协议需要的端口25和相关服务我没有关闭。盼指教~~
按你的方法试过 只是提示错误信息是“请求的名称有效,但是没有找到请求的类型的数据”,抛出异常的语句为:email.Send(smtpServer);