Lif*_*fes 2 c# serialization web-services mailmessage
我想将MailMessage作为参数传递给我的WCF Web服务.问题是MailMessage不可序列化,并且很多属性(如MailAddress)也不可序列化.我该如何序列化?
我已经看到了一个教程,通过将它作为包装类中的属性来序列化它,但这并没有帮助我通过WCF发送它,因为MailMessage属性没有出现在客户端(因为它不可序列化) .我不想只发送基本字符串值(to,from,body).我想发送整个MailMessage及其所有属性.我怎样才能做到这一点?
更新:
我认为使用Web服务并序列化MailMessage类是不值得的.序列化类确实有效,但是很多方法/构造函数在WCF客户端/消费者上都不可用.所以我不得不重新编写代码,从常规类(例如MailMessage)转换到客户端的序列化类(例如SerializedMailMessage).
我决定使用EmailHelper创建一个类库,并使用调用应用程序的配置来确定SMTP设置.
SmtpSection smtpConfig = ConfigurationManager.GetSection("system.net/mailSettings/smtp") as SmtpSection;
if (smtpConfig != null) {
// extract values to your SmtpClient
}
Run Code Online (Sandbox Code Playgroud)